:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f6f4;--surface:#fff;--surface-2:#f0f2ef;--line:#e3e7e2;--line-strong:#cfd5ce;--text:#19211d;--text-2:#56625a;--text-3:#8a948d;--accent:#177a4b;--accent-hover:#11653d;--accent-soft:#e5f2eb;--ok:#1f9d55;--warn:#d68c05;--fail:#d34343;--unclear:#9aa39d;--verified:#2ee87a;--verified-glow:#2ee87a80;--verified-text:#0f8a44;--fresh:#ff4d4d;--fresh-glow:#ff4d4d73;--fresh-text:#c02626;--r-lg:16px;--r-md:11px;--r-sm:7px;--shadow:0 1px 2px #141e190d, 0 6px 20px #141e190d;--shadow-pop:0 10px 40px #141e1929;--font:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--sidebar-w:236px;--tabbar-h:62px}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);font:15px/1.5 var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0}h1,h2,h3,p{margin:0}button,input{font:inherit;color:inherit}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.boot{min-height:100vh}.btn{border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);cursor:pointer;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 18px;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.btn:hover{background:var(--surface-2)}.btn:disabled{opacity:.6;cursor:default}.btn-primary{border-color:var(--accent);background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn-block{width:100%}.icon-button{border-radius:var(--r-md);width:40px;height:40px;color:var(--text-2);cursor:pointer;background:0 0;border:0;place-items:center;display:inline-grid}.icon-button:hover{background:var(--surface-2);color:var(--text)}.form{gap:14px;display:grid}.field{gap:6px;display:grid}.field>span{color:var(--text-2);font-size:13px;font-weight:600}.field small{color:var(--text-3);font-size:12.5px}.field input{border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);width:100%;min-height:44px;padding:0 14px;transition:border-color .15s,box-shadow .15s}.field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.form-error{border-radius:var(--r-sm);color:#a12c2c;background:#fbeaea;padding:10px 12px;font-size:14px}.login{place-items:center;min-height:100vh;padding:24px 16px;display:grid}.login-card{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);width:100%;max-width:380px;box-shadow:var(--shadow);gap:16px;padding:32px 28px;display:grid}.login-brand{align-items:center;gap:14px;margin-bottom:8px;display:flex}.login-brand h1{font-size:20px;font-weight:800;line-height:1.2}.login-brand p{color:var(--text-2);font-size:14px}.login-hint{color:var(--text-3);text-align:center;font-size:13px}.brand{align-items:center;gap:10px;min-width:0;display:flex}.brand .logo{flex:none}.brand-text{line-height:1.15;display:grid}.brand-text b{font-size:16px;font-weight:800}.brand-text span{color:var(--text-2);font-size:13px}.sidebar{width:var(--sidebar-w);border-right:1px solid var(--line);background:var(--surface);flex-direction:column;gap:24px;padding:20px 14px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar .brand{padding:0 8px}.side-nav{gap:2px;display:grid}.sidebar-foot{gap:4px;margin-top:auto;display:grid}.side-link{border-radius:var(--r-md);width:100%;min-height:42px;color:var(--text-2);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:0 12px;font-weight:600;display:flex}.side-link:hover{background:var(--surface-2);color:var(--text)}.side-link.is-active{background:var(--accent-soft);color:var(--accent)}.content{margin-left:var(--sidebar-w);padding:32px 36px 48px}.topbar,.tabbar{display:none}.user-menu{position:relative}.user-button{border-radius:var(--r-md);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:10px;width:100%;min-height:48px;padding:0 8px;display:flex}.user-button:hover{background:var(--surface-2)}.avatar{background:var(--accent-soft);width:32px;height:32px;color:var(--accent);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:700;display:grid}.user-name{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.menu{z-index:20;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);min-width:220px;box-shadow:var(--shadow-pop);padding:6px;position:absolute}.user-menu.is-up .menu{bottom:calc(100% + 6px);left:0;right:0}.user-menu.is-down .menu{top:calc(100% + 6px);right:0}.menu-head{border-bottom:1px solid var(--line);margin-bottom:4px;padding:8px 10px 10px;display:grid}.menu-head span{color:var(--text-3);font-size:13px}.menu button{border-radius:var(--r-sm);text-align:left;cursor:pointer;background:0 0;border:0;width:100%;padding:9px 10px;display:block}.menu button:hover{background:var(--surface-2)}.page{gap:20px;min-width:0;max-width:1200px;display:grid}.page-head h1{letter-spacing:-.01em;font-size:26px;font-weight:800;line-height:1.2}.page-head p{color:var(--text-2);margin-top:4px}.card{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow)}.empty-state{text-align:center;justify-items:center;gap:8px;padding:56px 24px;display:grid}.empty-state h2{max-width:460px;font-size:17px;line-height:1.35}.empty-state p{max-width:460px;color:var(--text-2)}.empty-icon{background:var(--accent-soft);width:52px;height:52px;color:var(--accent);border-radius:50%;place-items:center;margin-bottom:6px;display:grid}.dialog{border-radius:var(--r-lg);background:var(--surface);width:min(460px,100vw - 32px);max-height:calc(100vh - 48px);color:var(--text);box-shadow:var(--shadow-pop);border:0;padding:0}.dialog.is-wide{width:min(760px,100vw - 32px)}.dialog.is-full{width:calc(100vw - 32px);height:calc(100vh - 32px);max-height:none}.dialog.is-full .dialog-body{grid-template-rows:auto minmax(0,1fr);height:100%;padding:14px 18px 18px}.dialog::backdrop{background:#141e1959}.dialog-body{gap:14px;padding:20px 24px 24px;display:grid}.dialog-head{justify-content:space-between;align-items:center;gap:12px;margin-right:-10px;display:flex}.dialog-head h2{font-size:19px;font-weight:800}.dialog-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}@media (width<=899px){.sidebar{display:none}.topbar{z-index:10;padding:calc(8px + env(safe-area-inset-top)) 12px 8px 16px;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb;justify-content:space-between;align-items:center;gap:12px;display:flex;position:sticky;top:0}.topbar .brand b{white-space:nowrap;text-overflow:ellipsis;font-size:17px;font-weight:800;overflow:hidden}.topbar-actions{align-items:center;gap:2px;display:flex}.topbar .user-button{width:auto;min-height:40px;padding:0 4px}.topbar .user-name{display:none}.content{padding:20px 16px calc(var(--tabbar-h) + 28px + env(safe-area-inset-bottom));margin-left:0}.page-head h1{font-size:22px}.tabbar{z-index:10;height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;inset:auto 0 0}.tab-link{color:var(--text-3);align-content:center;place-items:center;gap:2px;font-size:11.5px;font-weight:600;display:grid}.tab-link.is-active{color:var(--accent)}.empty-state{padding:40px 20px}}.muted{color:var(--text-3)}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);margin:0 0 8px;font-size:11px;font-weight:700}h2{letter-spacing:-.01em;font-size:16px;font-weight:800}.card h2{margin-bottom:12px}.card{min-width:0;padding:20px 22px}.card+.card{margin-top:16px}.btn-sm{min-height:34px;padding:0 12px;font-size:13.5px}.btn-sm.is-active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.btn-ghost{background:0 0;border-color:#0000}.btn-danger{color:var(--fail)}.btn-danger:hover{background:#fbeaea}.pct-badge{border-radius:999px;align-items:center;padding:3px 9px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:13px;font-weight:700;display:inline-flex}.pct-badge.is-big{border-radius:var(--r-md);padding:8px 16px;font-size:24px}.lvl-good{color:#157a3c;background:#e3f4ea}.lvl-mid{color:#97650a;background:#fff3d6}.lvl-bad{color:#ad3535;background:#fbe3e3}.lvl-none{background:var(--surface-2);color:var(--text-3)}.delta-badge{align-items:center;gap:3px;font-size:12.5px;font-weight:700;display:inline-flex}.delta-badge.is-up{color:#157a3c}.delta-badge.is-down{color:#ad3535}.delta-badge.is-flat{color:var(--text-3)}.status-dot{background:var(--text-3);border-radius:50%;flex:none;width:9px;height:9px;display:inline-block}.status-dot.lvl-good{background:var(--ok)}.status-dot.lvl-mid{background:var(--warn)}.status-dot.lvl-bad{background:var(--fail)}.status-dot.lvl-none{background:var(--unclear)}.review-badge{border-radius:999px;padding:3px 9px;font-size:12px;font-weight:700;display:inline-flex}.review-badge.is-pending{color:#97650a;background:#fff3d6}.review-badge.is-audit{color:#97650a;background:#fff3d6;box-shadow:inset 0 0 0 1px #e9c46a}.review-badge.is-reviewed{background:var(--accent-soft);color:var(--accent)}.tag-current{background:var(--accent-soft);color:var(--accent);border-radius:999px;align-items:center;gap:5px;padding:2px 8px;font-size:11.5px;font-weight:700;display:inline-flex}.spinner{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.dashboard-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.region-select{border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);min-height:40px;padding:0 12px}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;display:grid}.kpi-tile{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow);gap:3px;padding:16px 18px;display:grid}.kpi-value{letter-spacing:-.01em;font-size:26px;font-weight:800}.kpi-label{color:var(--text-2);font-size:13px;font-weight:600}.kpi-hint{color:var(--text-3);font-size:12px}.cycle-card{gap:6px;display:grid}.cycle-head{flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:4px;display:flex}.cycle-missing,.cycle-ok{margin:0;font-size:13.5px}.cycle-ok{color:var(--accent);align-items:center;gap:6px;display:flex}.dashboard-grid{grid-template-columns:1fr 1fr;gap:16px;min-width:0;margin-top:16px;display:grid}.dashboard-grid .card{margin-top:0}.worst-list,.problem-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.worst-list a{border-radius:var(--r-sm);align-items:center;gap:10px;margin:0 -6px;padding:8px 6px;display:flex}.worst-list a:hover{background:var(--surface-2)}.worst-store{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.problem-list li{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:7px 0;display:flex}.problem-list li:last-child{border-bottom:0}.problem-list li>span:nth-child(2){flex:1}.trend-bars{align-items:flex-end;gap:8px;height:140px;padding-top:20px;display:flex}.trend-bar{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:4px;min-width:0;height:100%;display:flex}.trend-bar b{border-radius:5px 5px 2px 2px;width:100%;max-width:34px;display:block}.trend-value{font-size:11.5px;font-weight:700}.trend-bar em{color:var(--text-3);font-size:10.5px;font-style:normal}.region-block{margin-top:18px}.region-block-head{align-items:center;gap:10px;margin-bottom:10px;display:flex}.store-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;display:grid}.store-tile{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow);align-content:start;gap:6px;padding:14px 16px;display:grid}.store-tile.is-hidden{opacity:.55}.store-tile-name{font-size:14px;font-weight:700}.store-tile.is-verified{border-color:var(--verified);box-shadow:0 0 0 1px var(--verified), 0 0 16px var(--verified-glow)}.store-verified{color:var(--verified-text);font-size:12px;font-weight:700}.store-tile.is-fresh{border-color:var(--fresh);box-shadow:0 0 0 1px var(--fresh), 0 0 16px var(--fresh-glow)}.store-fresh{color:var(--fresh-text);font-size:12px;font-weight:700}.stores-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:10px;display:flex}.stores-head .segmented{flex-wrap:wrap}.kpi-tile.is-clickable{color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s}.kpi-tile.is-clickable:hover{border-color:var(--line-strong);box-shadow:var(--shadow-pop)}.card-note{margin:-8px 0 10px;font-size:12.5px}.oos-list li{padding:0}.oos-row{border-radius:var(--r-sm);width:calc(100% + 12px);color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;margin:0 -6px;padding:8px 6px;display:flex}.oos-row:hover{background:var(--surface-2)}.oos-name{flex-direction:column;flex:1;min-width:0;font-weight:600;display:flex}.oos-name i{color:var(--text-3);font-family:ui-monospace,monospace;font-size:12px;font-style:normal;font-weight:400}.oos-count{color:var(--text-2);flex:none;font-size:13px}.oos-share{text-align:right;flex:none;min-width:42px;font-weight:800}.oos-share.is-high{color:var(--fail)}.oos-foot{border-top:1px solid var(--line);flex-wrap:wrap;gap:6px 16px;margin-top:10px;padding-top:10px;display:flex}.oos-more{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:13.5px;font-weight:600}.drill-note{margin:0 0 10px;font-size:13px}.drill-list{gap:2px;max-height:60vh;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.drill-list a,.drill-list button{border-radius:var(--r-sm);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:9px 8px;display:flex}.drill-list a:hover,.drill-list button:hover{background:var(--surface-2)}.drill-title{flex-direction:column;flex:1;min-width:0;font-weight:600;display:flex}.drill-title i{color:var(--text-3);font-size:12.5px;font-style:normal;font-weight:400}.drill-value{color:var(--text-2);flex:none;font-size:13px}.store-detail-head{align-items:center;gap:12px;display:flex}.store-check-list{margin:0;padding:0;list-style:none}.store-check-list a{border-radius:var(--r-sm);border-bottom:1px solid var(--line);align-items:center;gap:12px;margin:0 -6px;padding:9px 6px;display:flex}.store-check-list li:last-child a{border-bottom:0}.store-check-list a:hover{background:var(--surface-2)}.store-select-trigger{border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);text-align:left;cursor:pointer;flex-direction:column;align-items:flex-start;gap:2px;width:100%;min-height:44px;padding:8px 14px;display:flex}.store-select{min-width:0;position:relative}.store-select.is-open .store-select-trigger{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.store-select-region{color:var(--text-3);font-size:11.5px}.store-select-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:600;overflow:hidden}.store-select-placeholder{color:var(--text-3)}.store-select.is-compact .store-select-trigger{border-radius:var(--r-sm);flex-direction:row-reverse;justify-content:flex-end;align-items:baseline;gap:6px;min-height:36px;padding:6px 10px;font-size:13.5px}.store-select.is-compact .store-select-trigger.is-empty{border-color:var(--warn);background:#fffaf0}.store-select.is-compact .store-select-trigger.is-empty .store-select-placeholder{color:#97650a;font-weight:600}.store-select-pop{z-index:15;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);width:max(100%,280px);max-width:calc(100vw - 32px);box-shadow:var(--shadow-pop);gap:6px;padding:6px;display:grid;position:absolute;top:calc(100% + 4px);left:0}.store-select-pop input{border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);width:100%;min-height:40px;padding:0 12px}.store-select-pop input:focus{border-color:var(--accent);outline:none}.store-select-list{max-height:280px;margin:0;padding:0;list-style:none;overflow-y:auto}.store-select-list button{border-radius:var(--r-sm);text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;gap:1px;width:100%;padding:8px 10px;display:flex}.store-select-list button:hover,.store-select-list button.is-cursor,.store-select-list button.is-active{background:var(--surface-2)}.store-select-list button.is-active .store-select-name{color:var(--accent)}.store-select-list .store-select-clear{color:var(--text-3)}.store-select-empty{padding:10px}.check-form{gap:16px;display:grid}.check-form-row{grid-template-columns:repeat(2,minmax(0,280px));gap:14px;display:grid}.field select{border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);width:100%;min-height:44px;color:var(--text);padding:0 12px}.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.dropzone{border:2px dashed var(--line-strong);border-radius:var(--r-lg);color:var(--text-2);text-align:center;justify-items:center;gap:8px;padding:32px 20px;display:grid}.dropzone.is-over{border-color:var(--accent);background:var(--accent-soft)}.queue-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.queue-row{border:1px solid var(--line);border-radius:var(--r-sm);align-items:center;gap:10px;padding:6px 8px;display:flex}.queue-thumb{background:var(--surface-2);border-radius:6px;flex:none;place-items:center;width:40px;height:40px;display:grid;overflow:hidden}.queue-thumb img{object-fit:cover;width:100%;height:100%}.queue-name{text-overflow:ellipsis;white-space:nowrap;flex-direction:column;flex:1;min-width:0;font-size:13.5px;font-weight:600;display:flex;overflow:hidden}.queue-name i{color:var(--text-3);font-size:11.5px;font-style:normal}.queue-status{flex-wrap:wrap;gap:6px;display:flex}.queue-tag{background:var(--surface-2);color:var(--text-2);border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:12px;font-weight:600;display:inline-flex}.queue-tag.is-ok{background:var(--accent-soft);color:var(--accent)}.queue-tag.is-warn{color:#97650a;background:#fff3d6}.queue-tag.is-error{color:#ad3535;background:#fbe3e3}.queue-link{cursor:pointer}.queue-row.is-bad{background:#fdf5f5;border-color:#f0c4c4}.queue-store{flex:0 240px;min-width:150px}.queue-store-name{font-size:13.5px;font-weight:600}.queue-store-name i{color:var(--text-3);font-style:normal;font-weight:400}.check-form-submit{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.dropzone small{font-size:12.5px}.notice-bad{border-radius:var(--r-md);color:#8f2a2a;background:#fdf1f1;border:1px solid #f0c4c4;align-items:flex-start;gap:10px;padding:12px 14px;font-size:14px;display:flex}.notice-bad>svg{color:var(--fail);flex:none;margin-top:2px}.notice-bad ul{margin:4px 0 0;padding-left:18px}.attn-dot{vertical-align:middle;border-radius:50%;flex:none;width:9px;height:9px;display:inline-block}.attn-dot.is-red{background:var(--fail);box-shadow:0 0 0 3px #d343432e}.attn-dot.is-green{background:var(--ok);animation:1.8s ease-in-out infinite attn-pulse;box-shadow:0 0 0 3px #1f9d552e}.attn-dot.is-audit{background:var(--warn);box-shadow:0 0 0 3px color-mix(in srgb, var(--warn) 22%, transparent)}.attn-dot.is-none{visibility:hidden}.tag-current .attn-dot{width:7px;height:7px;box-shadow:none}@keyframes attn-pulse{50%{box-shadow:0 0 0 6px #1f9d550f}}.nav-badge{background:var(--fail);color:#fff;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11.5px;font-weight:700;line-height:1;display:inline-grid}.side-link .nav-badge,.side-link .attn-dot{margin-left:auto}.tab-link{position:relative}.tab-link .nav-badge{min-width:18px;height:18px;box-shadow:0 0 0 2px var(--surface);padding:0 5px;font-size:10.5px;position:absolute;top:5px;left:calc(50% + 4px)}.tab-link .attn-dot{position:absolute;top:8px;left:calc(50% + 9px)}.store-check-list a.is-attention{font-weight:600}.attention-store{flex:1;min-width:0}.attention-store i{font-style:normal;font-weight:400}.attention-why{font-size:12.5px;font-weight:400}.attention-card{margin-bottom:20px}.attention-card .store-check-list a{flex-wrap:wrap;row-gap:2px}.page.check-detail{max-width:1600px}.check-detail-head{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}.check-detail-score{text-align:right;flex-direction:column;align-items:flex-end;gap:4px;display:flex}.check-detail-actions{flex-wrap:wrap;align-items:center;gap:8px;margin:-6px 0 4px;display:flex}.blind-entry{margin:-6px 0 4px}.compare-card{z-index:6;padding-top:12px;padding-bottom:14px;position:sticky;top:0}.compare-bar{flex-wrap:wrap;align-items:center;gap:6px 12px;margin-bottom:8px;display:flex}.compare-card.is-collapsed .compare-bar{margin-bottom:0}.compare-bar-title{font-size:13.5px;font-weight:700}.compare-bar-hint{flex:1;font-size:12.5px}.segmented{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2);padding:2px;display:inline-flex}.segmented button{min-height:28px;color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:5px;padding:0 10px;font-size:12.5px;font-weight:600}.segmented button.is-active{background:var(--surface);color:var(--accent);box-shadow:0 1px 2px #141e191f}.compare-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.compare-side{grid-template-rows:auto 1fr;gap:6px;min-width:0;margin:0;display:grid}.compare-side figcaption{color:var(--text-2);font-size:13px}.zoom-box{border-radius:var(--r-md);background:var(--surface-2);height:40vh;position:relative;overflow:hidden}.compare-card.is-large .zoom-box{height:60vh}.zoom-box.is-zoomed{cursor:grab;touch-action:none}.zoom-box.is-zoomed:active{cursor:grabbing}.zoom-box img{object-fit:contain;transform-origin:50%;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.compare-empty{border:2px dashed var(--line-strong);border-radius:var(--r-md);min-height:240px;color:var(--text-2);text-align:center;place-content:center;gap:6px;padding:20px;display:grid}.compare-empty a{color:var(--accent);font-weight:600}.compare-full{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:12px;min-height:0;display:grid}.compare-full figure{grid-template-rows:auto minmax(0,1fr);gap:6px;min-height:0;margin:0;display:grid}.compare-full figcaption{color:var(--text-2);font-size:13px;font-weight:700}.compare-full img{object-fit:contain;border-radius:var(--r-md);background:var(--surface-2);width:100%;height:100%;min-height:0}.summary-card p{margin:0 0 6px}.summary-card p:last-child{margin-bottom:0}.recommend{color:var(--accent);font-weight:600}.flag-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.flag-item{border-radius:var(--r-sm);color:#7a5605;background:#fff3d6;align-items:center;gap:8px;padding:8px 12px;font-size:13.5px;display:flex}.flag-item a{color:inherit;margin-left:auto;font-weight:700;text-decoration:underline}.flag-duplicate{color:#8f2e2e;background:#fbe3e3}.fixlist-card .fix-list,.fix-list{counter-reset:fix;gap:4px;margin:0;padding:0;list-style:none;display:grid}.fix-list li{counter-increment:fix;border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:7px 0;display:flex}.fix-list li:last-child{border-bottom:0}.fix-list li:before{content:counter(fix);background:var(--accent-soft);width:20px;height:20px;color:var(--accent);border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:800;display:grid}.fix-code{color:var(--text-3);flex:none;font-family:ui-monospace,monospace;font-size:12.5px}.fix-name{flex-direction:column;flex:1;font-weight:600;display:flex}.fix-name i{color:var(--text-3);font-size:12px;font-style:normal}.fixlist-sub{color:var(--text-3);margin:-4px 0 8px;font-size:13px}.fixlist-total{border-top:1px solid var(--line);margin:10px 0 0;padding-top:10px;font-size:14px}.fixlist-total b:last-child{color:var(--accent)}.shelf-diagram{gap:14px;display:grid;position:relative}.shelf-row-head{align-items:baseline;gap:8px;margin-bottom:6px;font-size:13px;display:flex}.shelf-row-head span{color:var(--text-3)}.shelf-row-items{flex-wrap:wrap;gap:6px;display:flex}.shelf-cell{border:1.5px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2);text-align:left;cursor:pointer;flex-direction:column;gap:2px;min-width:84px;max-width:140px;padding:7px 9px;display:flex}.shelf-cell-code{color:var(--text-3);font-family:ui-monospace,monospace;font-size:10.5px}.shelf-cell-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.shelf-cell.st-ok{background:#eaf7ef;border-color:#bfe4cd}.shelf-cell.st-moved{background:#fff6e2;border-color:#f3d99a}.shelf-cell.st-missing{background:#fdecec;border-color:#f0bcbc}.shelf-cell.st-unclear{border-color:var(--line-strong);background:var(--surface)}.shelf-cell.is-promo{border-style:dashed}.shelf-cell.is-selected{outline:2px solid var(--accent);outline-offset:1px}.shelf-cell.is-corrected:after{content:"✎";color:var(--text-3);align-self:flex-end;font-size:10px}.shelf-cell.is-unmarked{color:var(--text-3);border-style:dashed}.shelf-cell.is-blind-skip{cursor:default;opacity:.55}.shelf-foreign{color:#97650a;margin:4px 0 0;font-size:12.5px}.shelf-row-head{flex-wrap:wrap}.shelf-mark{color:var(--fail);font-size:12px;font-style:normal;font-weight:700}.shelf-mark.is-warn{color:var(--warn)}.shelf-row.is-absent .shelf-cell.st-missing{border-color:var(--line-strong);background:repeating-linear-gradient(135deg, var(--surface-2) 0 6px, var(--surface) 6px 12px);color:var(--text-3)}.shelf-menu{margin-left:auto;position:relative}.shelf-menu-trigger{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);min-height:30px;color:var(--text-2);cursor:pointer;align-items:center;gap:4px;padding:0 10px;font-size:12.5px;font-weight:600;display:inline-flex}.shelf-menu-trigger:hover:not(:disabled){border-color:var(--line-strong)}.shelf-menu-trigger:disabled{opacity:.5;cursor:default}.shelf-menu-trigger svg{width:14px;height:14px}.shelf-menu-pop{z-index:15;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);width:280px;max-width:calc(100vw - 32px);box-shadow:var(--shadow-pop);gap:2px;padding:6px;display:grid;position:absolute;top:calc(100% + 4px);right:0}.shelf-menu-pop button{border-radius:var(--r-sm);text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 10px;font-size:13.5px;font-weight:600;display:flex}.shelf-menu-pop button:hover{background:var(--surface-2)}.shelf-menu-pop button i{color:var(--text-3);font-size:12px;font-style:normal;font-weight:400}.shelf-hint{border-radius:var(--r-sm);background:#fff6e2;border:1px solid #f3d99a;flex-wrap:wrap;align-items:flex-start;gap:6px 10px;margin:0 0 12px;padding:10px 12px;font-size:13px;display:flex}.shelf-hint svg{width:16px;height:16px;color:var(--warn);flex:none;margin-top:2px}.shelf-hint p{flex:240px;margin:0}.shelf-hint-actions{flex-wrap:wrap;gap:6px;display:flex}.shelf-rerun{border-radius:var(--r-sm);background:var(--accent-soft);color:var(--accent);align-items:center;gap:8px;margin:0 0 12px;padding:8px 12px;font-size:13px;font-weight:600;display:flex}.shelf-row{scroll-margin-top:var(--sticky-offset,16px);scroll-margin-bottom:16px}.position-panel{border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-pop);margin-top:12px;padding:14px 16px;position:relative}.position-panel:before{content:"";top:-7px;left:calc(var(--arrow-x,28px) - 6px);border-top:1px solid var(--line-strong);border-left:1px solid var(--line-strong);background:var(--surface);width:12px;height:12px;position:absolute;transform:rotate(45deg)}.position-panel-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.position-comment{margin:6px 0;font-size:13.5px}.position-panel-actions{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.status-btn{gap:6px}.status-btn kbd,.position-keys kbd{border:1px solid var(--line-strong);background:var(--surface-2);min-width:18px;height:18px;color:var(--text-2);border-radius:4px;place-items:center;padding:0 4px;font:600 11px/1 ui-monospace,monospace;display:inline-grid}.status-glyph{font-weight:800}.status-btn.st-ok .status-glyph{color:var(--ok,#1f8a4c)}.status-btn.st-moved .status-glyph{color:var(--warn)}.status-btn.st-missing .status-glyph{color:var(--fail)}.status-btn.st-unclear .status-glyph{color:var(--text-3)}.position-keys{color:var(--text-3);margin:10px 0 0;font-size:12px}.blind-panel{border:1.5px dashed var(--accent);border-radius:var(--r-md);background:var(--surface);padding:14px 16px}.blind-panel-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.blind-panel-head .muted{margin:2px 0 0}.blind-panel-actions{flex-shrink:0;gap:8px;display:flex}.blind-progress{margin:10px 0 0;font-size:13px;font-weight:600}.blind-done{border-radius:var(--r-sm);background:#eaf7ef;margin:8px 0 0;padding:8px 10px;font-size:13.5px}.blind-panel .shelf-diagram{margin-top:12px}.tags-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.tag-row{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:8px 12px;padding:8px 4px;display:grid}.tag-row:last-child{border-bottom:0}.tag-title{grid-column:2;align-items:center;gap:6px;font-size:13.5px;font-weight:600;display:flex}.tag-comment{color:var(--text-3);grid-column:2;font-size:12.5px}.tag-row .c-set{grid-area:1/3/3}.c-fixed{background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:1px 6px;font-size:11px;font-style:normal}.c-set{gap:4px;display:flex}.c-set button{border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;border-radius:999px;min-height:28px;padding:0 9px;font-size:12px;font-weight:600}.c-set button.is-active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.compare-block{gap:8px;display:grid}.compare-group p{margin:4px 0 0;font-size:13.5px}.compare-group.is-good b{color:var(--accent)}.compare-group.is-bad b{color:#ad3535}.compare-group.is-mid b{color:#97650a}.runs-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.runs-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.runs-list li{border-radius:var(--r-sm);background:var(--surface-2);flex-wrap:wrap;align-items:center;gap:8px 14px;padding:8px 10px;display:flex}.runs-list li.is-primary{outline:1.5px solid var(--accent)}.run-engine{align-items:center;gap:6px;font-weight:700;display:flex}.run-engine i{background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:1px 6px;font-size:11px;font-style:normal}.run-state{align-items:center;gap:5px;font-size:13px;display:flex}.run-meta{font-size:12.5px}.runs-note{margin:4px 0 10px;font-size:12.5px}.settings-block{gap:12px;scroll-margin-top:80px;display:grid}.settings-block.is-target{box-shadow:0 0 0 2px var(--accent), var(--shadow)}.upload-field{border:1px solid var(--line);border-radius:var(--r-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.upload-field>div{gap:2px;min-width:0;display:grid}.upload-field .muted{overflow-wrap:anywhere;font-size:12.5px}.settings-row{flex-wrap:wrap;justify-content:space-between;gap:14px;display:flex}.settings-actions{flex-wrap:wrap;align-items:flex-start;gap:8px;display:flex}.import-result{border-radius:var(--r-sm);background:var(--accent-soft);color:var(--accent);gap:10px;padding:10px 14px;display:flex}.import-result.is-error{color:#ad3535;background:#fbe3e3}.import-result p{margin:0 0 2px}.import-issues{margin-top:4px;font-size:12.5px}.import-issues ul{margin:6px 0 0;padding-left:18px}.planogram-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.planogram-card{border:1px solid var(--line);border-radius:var(--r-md);grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px;display:grid}.planogram-card.is-current{border-color:var(--accent)}.planogram-thumb{border-radius:var(--r-sm);background:var(--surface-2);place-items:center;width:64px;height:64px;display:grid;overflow:hidden}.planogram-thumb img{object-fit:cover;width:100%;height:100%}.planogram-noimg{color:var(--text-3);text-align:center;font-size:10.5px}.planogram-info{gap:2px;font-size:13px;display:grid}.planogram-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}a.planogram-thumb{cursor:zoom-in}.report-filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.report-filters select,.report-filters input{border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);min-height:40px;padding:0 10px}.report-table{border-collapse:collapse;width:100%;font-size:13.5px}.report-table th,.report-table td{text-align:left;border-bottom:1px solid var(--line);padding:8px 10px}.report-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);font-size:11.5px}.table-scroll{overflow-x:auto}.accuracy-grid{grid-template-columns:repeat(auto-fit,minmax(160px,220px));margin:10px 0 14px}.accuracy-tables{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:18px 28px;margin-top:6px;display:grid}.accuracy-tables h3{margin:0 0 4px;font-size:14px}@media (width<=899px){.accuracy-grid{grid-template-columns:1fr}}.report-table td.num,.report-table th.num{text-align:right;font-variant-numeric:tabular-nums}.help-content{gap:16px;display:grid}.help-rule{grid-template-columns:auto 1fr;gap:12px;display:grid}.help-rule-num{border-radius:var(--r-sm);background:var(--accent-soft);width:30px;height:30px;color:var(--accent);place-items:center;font-weight:800;display:grid}.help-rule h3{margin:0 0 6px;font-size:14.5px;font-weight:800}.help-rule ul{margin:0;padding-left:17px}.help-rule li{margin-bottom:4px;font-size:13.5px;line-height:1.5}.help-mistakes{border-top:1px dashed var(--line);margin-top:12px;padding-top:10px}.help-mistakes-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.help-mistake{border:1px solid var(--line);border-radius:var(--r-md);text-align:center;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;display:flex}.help-mistake b{font-size:12px}.help-mistake span{color:var(--text-3);font-size:11px}.m-icon{background:var(--surface);border:1.5px dashed var(--line);border-radius:6px;flex:none;justify-content:center;align-items:center;width:46px;height:46px;margin-bottom:4px;display:flex;position:relative;overflow:hidden}.m-far i,.m-angle i,.m-crop i{background:var(--surface);border:1.5px solid var(--accent);border-radius:2px;display:block;position:relative}.m-far i:before,.m-angle i:before,.m-crop i:before,.m-far i:after,.m-angle i:after,.m-crop i:after{content:"";background:var(--accent);opacity:.5;height:1.5px;position:absolute;left:2px;right:2px}.m-far i:before,.m-angle i:before,.m-crop i:before{top:33%}.m-far i:after,.m-angle i:after,.m-crop i:after{top:66%}.m-far i{width:12px;height:22px}.m-angle i{width:20px;height:30px;transform:rotate(-18deg)}.m-crop i{width:28px;height:52px;margin-top:-13px}@media (width<=899px){.dashboard-grid,.compare-grid,.check-form-row{grid-template-columns:1fr}.compare-card{position:static}.zoom-box,.compare-card.is-large .zoom-box{height:55vh}.compare-bar-hint{display:none}.shelf-row{scroll-margin-top:16px}.compare-full{grid-auto-rows:minmax(60vh,auto);grid-auto-flow:row;overflow-y:auto}.planogram-card{grid-template-columns:64px minmax(0,1fr)}.planogram-actions{grid-column:1/-1;justify-content:flex-start}.help-mistakes-grid{grid-template-columns:repeat(3,1fr)}.check-detail-score{text-align:left;align-items:flex-start}.queue-row{flex-wrap:wrap}.queue-row>.icon-button{order:3}.queue-store{flex:100%;order:4}.queue-status{flex:100%;order:5}.attention-card .attention-store{flex-basis:calc(100% - 30px)}}.shelf-cell.st-maybe{border-style:dashed;border-color:var(--unclear);background:repeating-linear-gradient(135deg, var(--surface) 0 6px, #eef0ec 6px 12px)}
