.login-backdrop[data-v-a13970cd]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-dark);display:flex;align-items:center;justify-content:center}.login-card[data-v-a13970cd]{background:var(--bg-panel-solid);border:1px solid var(--border-color);border-radius:12px;padding:40px 36px;width:360px;box-shadow:0 0 40px #00b4d833}.login-title[data-v-a13970cd]{color:var(--cyan-glow);font-size:28px;font-weight:700;text-align:center;letter-spacing:2px;margin-bottom:4px}.login-sub[data-v-a13970cd]{color:var(--text-muted);font-size:13px;text-align:center;margin-bottom:32px}.login-form .field[data-v-a13970cd]{margin-bottom:16px}.login-form label[data-v-a13970cd]{display:block;color:var(--text-secondary);font-size:13px;margin-bottom:6px}.login-form input[data-v-a13970cd]{width:100%;background:var(--bg-input);border:1px solid var(--border-color);color:var(--text-primary);padding:10px 12px;border-radius:4px;font-size:14px}.login-form input[data-v-a13970cd]:focus{outline:none;border-color:var(--cyan-glow)}.error[data-v-a13970cd]{color:var(--red-glow);font-size:13px;margin-bottom:8px}.btn-login[data-v-a13970cd]{width:100%;padding:10px;margin-top:8px;font-size:15px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px}.btn-login .spinner[data-v-a13970cd]{width:18px;height:18px;border-width:2px}.navbar[data-v-8a2cf2ac]{height:48px;background:#0f172af2;border-bottom:1px solid var(--border-color);display:flex;align-items:center;padding:0 24px;gap:24px;flex-shrink:0}.brand[data-v-8a2cf2ac]{color:var(--cyan-glow);font-size:18px;font-weight:700;letter-spacing:1.5px;white-space:nowrap}.tabs[data-v-8a2cf2ac]{display:flex;gap:4px;margin-left:auto;margin-right:auto}.tab[data-v-8a2cf2ac]{background:transparent;border:1px solid transparent;color:var(--text-secondary);padding:6px 18px;border-radius:4px;font-size:14px;cursor:pointer;transition:color .15s,background .15s,border-color .15s;white-space:nowrap}.tab[data-v-8a2cf2ac]:hover{color:var(--text-primary);background:#2d4a6f4d}.tab.active[data-v-8a2cf2ac]{color:var(--cyan-glow);background:#00b4d81a;border-color:#00b4d840}.user-block[data-v-8a2cf2ac]{display:flex;align-items:center;gap:12px;margin-left:auto}.display-name[data-v-8a2cf2ac]{color:var(--text-secondary);font-size:13px}.logout[data-v-8a2cf2ac]{border-color:var(--border-color);color:var(--text-secondary)}.logout[data-v-8a2cf2ac]:hover{border-color:var(--cyan-glow);color:var(--cyan-glow);background:transparent;box-shadow:none}.depth-profile-overlay[data-v-c8332ad0]{position:absolute;top:12px;right:12px;background:#0f172aeb;border:1px solid rgba(45,74,111,.5);border-radius:6px;box-shadow:0 0 20px #00000080;pointer-events:none;z-index:10}.depth-svg[data-v-c8332ad0]{display:block}.depth-controls[data-v-c8332ad0]{display:flex;align-items:center;gap:6px;padding:5px 8px 2px;pointer-events:auto}.depth-label[data-v-c8332ad0],.depth-unit[data-v-c8332ad0]{color:#89a;font-size:11px}.depth-input[data-v-c8332ad0]{width:44px;background:#1a2332;border:1px solid rgba(45,74,111,.5);border-radius:3px;color:#e2e8f0;font-size:11px;padding:2px 4px;text-align:center;-moz-appearance:textfield}.depth-input[data-v-c8332ad0]::-webkit-outer-spin-button,.depth-input[data-v-c8332ad0]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.depth-input[data-v-c8332ad0]:focus{outline:none;border-color:#00b4d8}.map-container[data-v-ab398b3d]{position:relative;width:100%;height:100%}#map[data-v-ab398b3d]{width:100%;height:100%}.map-legend[data-v-ab398b3d]{position:absolute;bottom:20px;left:20px;background:#0f172af2;border:1px solid rgba(45,74,111,.5);border-radius:6px;padding:12px 16px;box-shadow:0 4px 20px #00000080;z-index:10}.legend-title[data-v-ab398b3d]{color:#e2e8f0;font-size:13px;font-weight:600;margin-bottom:10px}.legend-item[data-v-ab398b3d]{display:flex;align-items:center;gap:10px;margin-bottom:6px;color:#89a;font-size:12px}.legend-item[data-v-ab398b3d]:last-child{margin-bottom:0}.legend-dot[data-v-ab398b3d]{border-radius:50%;border:1.5px solid #fff;flex-shrink:0}.legend-dot.large[data-v-ab398b3d]{width:16px;height:16px}.legend-dot.small[data-v-ab398b3d]{width:8px;height:8px}.legend-dot.green[data-v-ab398b3d]{background-color:#22c55e}.legend-dot.red[data-v-ab398b3d]{background-color:#ef4444}.legend-dot.gray[data-v-ab398b3d]{background-color:#9ca3af}.modal-backdrop[data-v-22931626]{position:fixed!important;top:0;right:0;bottom:0;left:0;background:#0000004d;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);pointer-events:none;z-index:999998!important}.floating-window[data-v-22931626]{position:fixed!important;display:flex;flex-direction:column;background:#0f172a;border:3px solid #00b4d8;border-radius:8px;box-shadow:0 0 60px #00b4d8cc,0 8px 40px #000c;overflow:hidden;pointer-events:auto;z-index:999999!important}.title-bar[data-v-22931626]{height:40px;background:#0f172afa;border-bottom:1px solid rgba(45,74,111,.5);display:flex;align-items:center;justify-content:space-between;padding:0 12px;cursor:move;-webkit-user-select:none;user-select:none}.title[data-v-22931626]{color:#e2e8f0;font-size:13px;font-weight:500}.title-btn[data-v-22931626]{background:transparent;border:1px solid rgba(45,74,111,.5);color:#e2e8f0;padding:4px;border-radius:4px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.title-btn[data-v-22931626]:hover{background:#ef4444cc;border-color:#ef4444;color:#fff}canvas[data-v-22931626]{flex:1;display:block;cursor:grab;background:#0a0e14}canvas[data-v-22931626]:active{cursor:grabbing}.controls[data-v-22931626]{position:absolute;bottom:16px;left:50%;transform:translate(-50%);display:flex;gap:8px;align-items:center;background:#0f172af2;border:1px solid rgba(45,74,111,.5);border-radius:6px;padding:8px 12px;box-shadow:0 4px 20px #00000080}.ctrl-btn[data-v-22931626]{background:transparent;border:1px solid rgba(45,74,111,.5);color:#00b4d8;padding:6px 10px;border-radius:4px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;min-width:36px;font-size:12px;font-weight:600}.ctrl-btn[data-v-22931626]:hover{background:#00b4d833;border-color:#00b4d8}.image-panel-container[data-v-f2d8f6d6]{position:relative;width:100%;height:100%;background:#0a0e14;display:flex;align-items:center;justify-content:center}canvas[data-v-f2d8f6d6]{width:100%;height:100%;object-fit:contain}.expand-btn[data-v-f2d8f6d6]{position:absolute;bottom:12px;right:12px;background:#0009;border:1px solid rgba(255,255,255,.3);border-radius:4px;color:#fff;padding:8px;cursor:pointer;transition:all .2s;z-index:10}.expand-btn[data-v-f2d8f6d6]:hover{background:#00b4d8cc;box-shadow:0 0 12px #00b4d880}.validation-controls[data-v-f2d8f6d6]{position:absolute;bottom:12px;left:12px;background:#0f172af2;border:1px solid rgba(45,74,111,.5);border-radius:6px;padding:10px 14px;box-shadow:0 0 20px #00000080;z-index:10}.detection-info[data-v-f2d8f6d6]{display:flex;gap:12px;align-items:center;margin-bottom:6px}.label[data-v-f2d8f6d6]{color:#e2e8f0;font-size:13px;font-weight:500}.confidence[data-v-f2d8f6d6]{color:#00b4d8;font-size:13px;font-weight:600}.hotkeys[data-v-f2d8f6d6]{color:#89a;font-size:11px;text-align:center}.hotkeys kbd[data-v-f2d8f6d6]{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:3px;padding:2px 6px;font-family:monospace;font-size:11px;color:#e2e8f0}.hotkeys.disabled[data-v-f2d8f6d6]{opacity:.4}.hotkeys .disabled-label[data-v-f2d8f6d6]{color:#ef4444;margin-left:6px}.loading-overlay[data-v-f2d8f6d6]{position:absolute;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:20}.sequence-panel[data-v-a58afd1b]{flex-shrink:0;display:flex;flex-direction:column;background:#0f172a;border-top:1px solid rgba(45,74,111,.5);position:relative;min-height:150px;max-height:600px}.resize-handle[data-v-a58afd1b]{position:absolute;top:0;left:0;right:0;height:8px;cursor:ns-resize;z-index:20;background:transparent;transition:background .2s}.resize-handle[data-v-a58afd1b]:hover{background:#00b4d84d}.resize-handle[data-v-a58afd1b]:after{content:"";position:absolute;top:3px;left:50%;transform:translate(-50%);width:40px;height:2px;background:#8899aa80;border-radius:1px}.empty-state[data-v-a58afd1b]{display:flex;align-items:center;justify-content:center;padding:24px;flex:1}.empty-message[data-v-a58afd1b]{color:#89a;font-size:13px;font-style:italic}.gallery-nav-footer[data-v-a58afd1b]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 12px;background:#0f172af2;border-top:1px solid rgba(45,74,111,.4);flex-shrink:0}.sort-order-toggle[data-v-a58afd1b]{display:flex;align-items:center;gap:6px;color:#89a;font-size:12px;cursor:pointer;-webkit-user-select:none;user-select:none}.sort-order-toggle input[type=checkbox][data-v-a58afd1b]{width:14px;height:14px;cursor:pointer;accent-color:#00b4d8}.sort-order-toggle[data-v-a58afd1b]:hover{color:#00b4d8}.nav-group[data-v-a58afd1b]{display:flex;align-items:center;gap:8px}.nav-btn[data-v-a58afd1b]{background:#1a2332;border:1px solid rgba(45,74,111,.5);color:#e2e8f0;padding:4px 12px;border-radius:4px;cursor:pointer;font-size:14px;transition:all .15s}.nav-btn[data-v-a58afd1b]:hover:not(:disabled){border-color:#00b4d8;color:#00b4d8}.nav-btn[data-v-a58afd1b]:disabled{opacity:.3;cursor:default}.nav-count[data-v-a58afd1b]{color:#89a;font-size:13px;min-width:60px;text-align:center}.jump-btn[data-v-a58afd1b]{background:#00b4d826;border:1px solid #00b4d8;color:#00b4d8;padding:4px 14px;border-radius:4px;cursor:pointer;font-size:13px;font-weight:600;transition:all .15s}.jump-btn[data-v-a58afd1b]:hover{background:#00b4d840}.panel-header[data-v-a58afd1b]{display:flex;justify-content:space-between;align-items:center;padding:6px 12px;flex-shrink:0}.header-info[data-v-a58afd1b]{display:flex;align-items:center;gap:12px}.seq-label[data-v-a58afd1b]{color:#e2e8f0;font-size:12px;font-weight:500}.detection-count[data-v-a58afd1b]{color:#89a;font-size:11px;margin-left:8px}.close-btn[data-v-a58afd1b]{background:transparent;border:1px solid rgba(45,74,111,.5);border-radius:4px;color:#e2e8f0;padding:3px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.close-btn[data-v-a58afd1b]:hover{background:#ef444433;border-color:#ef4444;color:#ef4444}.loading-row[data-v-a58afd1b]{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px;color:#89a;font-size:13px;flex:1}.thumbnail-row[data-v-a58afd1b]{display:flex;gap:8px;padding:6px 12px 10px;overflow-x:auto;overflow-y:auto;flex-wrap:nowrap;flex:1;min-height:0}.thumbnail-item[data-v-a58afd1b]{position:relative;border-radius:4px;overflow:hidden;cursor:pointer;border:2px solid rgba(45,74,111,.3);transition:border-color .15s,box-shadow .15s;flex-shrink:0;width:var(--thumb-min-width, 150px);height:var(--thumb-height, 120px);background:#0a0e14;display:flex;align-items:center;justify-content:center}.thumbnail-item[data-v-a58afd1b]:hover{border-color:#00b4d899;box-shadow:0 0 12px #00b4d84d}.thumbnail-item.active[data-v-a58afd1b]{border-color:#00b4d8;box-shadow:0 0 12px #00b4d899}.thumbnail-img[data-v-a58afd1b]{max-width:100%;max-height:100%;width:auto;height:auto;display:block;object-fit:contain}.thumbnail-item.status-valid .thumbnail-img[data-v-a58afd1b]{box-shadow:inset 0 0 0 3px #000c,0 0 0 4px #22c55e,0 0 16px #22c55e99}.thumbnail-item.status-invalid .thumbnail-img[data-v-a58afd1b]{box-shadow:inset 0 0 0 3px #000c,0 0 0 4px #ef4444,0 0 16px #ef444499}.thumbnail-overlay[data-v-a58afd1b]{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);padding:6px 8px;display:flex;justify-content:space-between;align-items:center}.frame-number[data-v-a58afd1b]{color:#e2e8f0;font-size:11px;font-weight:600}.confidence[data-v-a58afd1b]{color:#00b4d8;font-size:11px;font-weight:600}.validation-bar[data-v-a58afd1b]{position:absolute;bottom:100%;left:12px;margin-bottom:8px;width:fit-content;background:#0f172af2;border:1px solid rgba(45,74,111,.5);border-radius:6px;padding:10px 14px;box-shadow:0 0 20px #00000080;z-index:15}.validation-info[data-v-a58afd1b]{display:flex;gap:12px;align-items:center;margin-bottom:6px}.val-label[data-v-a58afd1b]{color:#e2e8f0;font-size:13px;font-weight:500}.val-confidence[data-v-a58afd1b]{color:#00b4d8;font-size:13px;font-weight:600}.val-hotkeys[data-v-a58afd1b]{color:#89a;font-size:11px;text-align:center}.val-hotkeys kbd[data-v-a58afd1b]{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:3px;padding:2px 6px;font-family:monospace;font-size:11px;color:#e2e8f0}.val-hotkeys.disabled[data-v-a58afd1b]{opacity:.4}.val-hotkeys .disabled-label[data-v-a58afd1b]{color:#ef4444;margin-left:6px}.timeline-container[data-v-8d65e1ac]{height:60px;background:#0f172af2;border-top:1px solid rgba(45,74,111,.5);display:flex;flex-direction:column;padding:8px 16px;flex-shrink:0}.timeline-controls[data-v-8d65e1ac]{display:flex;align-items:center;gap:12px;margin-bottom:8px}.btn-sm[data-v-8d65e1ac]{background:transparent;border:1px solid rgba(45,74,111,.5);color:#00b4d8;padding:4px 8px;border-radius:4px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.btn-sm[data-v-8d65e1ac]:hover:not(:disabled){background:#00b4d833;border-color:#00b4d8}.btn-sm[data-v-8d65e1ac]:disabled{opacity:.3;cursor:not-allowed}.btn-sm.green[data-v-8d65e1ac]{color:#22c55e;border-color:#22c55e66}.btn-sm.green[data-v-8d65e1ac]:hover:not(:disabled){background:#22c55e33;border-color:#22c55e}.btn-sm.red[data-v-8d65e1ac]{color:#ef4444;border-color:#ef444466}.btn-sm.red[data-v-8d65e1ac]:hover:not(:disabled){background:#ef444433;border-color:#ef4444}.nav-sep[data-v-8d65e1ac]{width:1px;height:20px;background:#2d4a6f80;flex-shrink:0}.speed-select[data-v-8d65e1ac]{background:#1a2332;border:1px solid rgba(45,74,111,.5);color:#e2e8f0;padding:4px 8px;border-radius:4px;font-size:12px;cursor:pointer}.frame-info[data-v-8d65e1ac]{color:#89a;font-size:12px;font-family:monospace}.timestamp[data-v-8d65e1ac]{color:#00b4d8;font-size:12px;font-family:monospace;margin-left:auto}.buffering[data-v-8d65e1ac]{color:#fa0;font-size:12px;display:flex;align-items:center;gap:8px;margin-left:auto}.buffering .spinner[data-v-8d65e1ac]{width:16px;height:16px}.scrubber-container[data-v-8d65e1ac]{flex:1;display:flex;align-items:center}.scrubber[data-v-8d65e1ac]{width:100%}[data-tip][data-v-8d65e1ac]{position:relative}[data-tip][data-v-8d65e1ac]:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:#0f172af2;border:1px solid rgba(45,74,111,.6);color:#e2e8f0;font-size:11px;padding:4px 8px;border-radius:4px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s}[data-tip][data-v-8d65e1ac]:hover:after{opacity:1;transition-delay:.7s}.vg-root[data-v-6c1da8d7]{height:calc(100vh - 48px);display:flex;overflow:hidden}.vg-sidebar[data-v-6c1da8d7]{width:260px;flex-shrink:0;background:#0f1724;border-right:1px solid rgba(45,74,111,.4);overflow-y:auto;padding:16px 14px;display:flex;flex-direction:column;gap:12px}.vg-mode-toggle[data-v-6c1da8d7],.vg-scope-toggle[data-v-6c1da8d7]{display:flex;gap:4px}.vg-mode-toggle button[data-v-6c1da8d7],.vg-scope-toggle button[data-v-6c1da8d7]{flex:1;padding:6px 0;background:#1a2332;border:1px solid rgba(45,74,111,.4);color:#89a;font-size:13px;border-radius:4px;cursor:pointer;transition:all .15s}.vg-mode-toggle button.active[data-v-6c1da8d7],.vg-scope-toggle button.active[data-v-6c1da8d7]{background:#00b4d826;border-color:#00b4d8;color:#00b4d8}.vg-filter-row[data-v-6c1da8d7]{display:flex;flex-direction:column;gap:4px}.vg-filter-row label[data-v-6c1da8d7]{color:#89a;font-size:12px;text-transform:uppercase;letter-spacing:.5px;display:flex;justify-content:space-between}.vg-conf-input-group[data-v-6c1da8d7]{display:flex;align-items:center;gap:4px;margin-bottom:6px}.vg-conf-input[data-v-6c1da8d7]{flex:1;background:#1a2332;border:1px solid rgba(45,74,111,.4);color:#e2e8f0;padding:4px 8px;border-radius:4px;font-size:13px;width:60px}.vg-conf-input[data-v-6c1da8d7]:focus{outline:none;border-color:#00b4d8}.vg-conf-percent[data-v-6c1da8d7]{color:#89a;font-size:12px}.vg-filter-row select[data-v-6c1da8d7],.vg-filter-row input[type=range][data-v-6c1da8d7]{background:#1a2332;border:1px solid rgba(45,74,111,.4);color:#e2e8f0;padding:5px 8px;border-radius:4px;font-size:13px;width:100%}.vg-filter-row select[data-v-6c1da8d7]:focus{outline:none;border-color:#00b4d8}.vg-filter-row input[type=range][data-v-6c1da8d7]{-webkit-appearance:slider-vertical;-moz-appearance:auto;appearance:auto;accent-color:#00b4d8;padding:0;height:6px;border:none;background:transparent}.vg-stats[data-v-6c1da8d7]{margin-top:auto;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:12px;border-top:1px solid rgba(45,74,111,.3)}.vg-stat-item[data-v-6c1da8d7]{background:#1a2332;border-radius:6px;padding:8px 6px;text-align:center}.vg-stat-num[data-v-6c1da8d7]{display:block;font-size:18px;font-weight:700;color:#e2e8f0}.vg-stat-num.vg-valid[data-v-6c1da8d7]{color:#00b4d8}.vg-stat-label[data-v-6c1da8d7]{display:block;font-size:11px;color:#89a;margin-top:2px}.vg-confusion[data-v-6c1da8d7]{margin-top:16px;padding-top:12px;border-top:1px solid rgba(45,74,111,.3)}.vg-confusion-header[data-v-6c1da8d7]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.vg-confusion-title[data-v-6c1da8d7]{color:#89a;font-size:12px;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.vg-threshold-input[data-v-6c1da8d7]{display:flex;align-items:center;gap:6px}.vg-threshold-input label[data-v-6c1da8d7]{color:#89a;font-size:11px}.vg-threshold-box[data-v-6c1da8d7]{background:#1a2332;border:1px solid rgba(45,74,111,.4);color:#e2e8f0;padding:3px 6px;border-radius:3px;font-size:11px;width:50px}.vg-threshold-box[data-v-6c1da8d7]:focus{outline:none;border-color:#00b4d8}.vg-metrics[data-v-6c1da8d7]{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-bottom:10px}.vg-metric-item[data-v-6c1da8d7]{background:#1a2332;border-radius:4px;padding:6px 4px;text-align:center}.vg-metric-label[data-v-6c1da8d7]{display:block;font-size:10px;color:#89a;margin-bottom:2px}.vg-metric-val[data-v-6c1da8d7]{display:block;font-size:13px;font-weight:700;color:#00b4d8}.vg-confusion-table[data-v-6c1da8d7]{width:100%;border-collapse:collapse;font-size:11px;background:#1a2332;border-radius:4px;overflow:hidden}.vg-confusion-table th[data-v-6c1da8d7],.vg-confusion-table td[data-v-6c1da8d7]{padding:6px 4px;text-align:center;border:1px solid rgba(45,74,111,.3)}.vg-confusion-table th[data-v-6c1da8d7]{background:#0000004d;color:#89a;font-weight:600;font-size:10px}.vg-table-header[data-v-6c1da8d7]{color:#c0ccd8;font-size:11px}.vg-table-corner[data-v-6c1da8d7]{background:transparent;border:none}.vg-table-sub[data-v-6c1da8d7]{font-size:10px}.vg-table-row-label[data-v-6c1da8d7]{text-align:left;color:#c0ccd8;font-weight:500;padding-left:6px}.vg-tp[data-v-6c1da8d7]{background:#22c55e26;color:#22c55e;font-weight:700}.vg-fp[data-v-6c1da8d7],.vg-fn[data-v-6c1da8d7]{background:#ef444426;color:#ef4444;font-weight:700}.vg-tn[data-v-6c1da8d7]{background:#22c55e26;color:#22c55e;font-weight:700}.vg-main[data-v-6c1da8d7]{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0;background:#0a1118}.vg-bulk-bar[data-v-6c1da8d7]{height:40px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:#0f1724e6;border-bottom:1px solid rgba(45,74,111,.3);flex-shrink:0}.vg-bulk-count[data-v-6c1da8d7]{color:#89a;font-size:13px}.vg-bulk-actions[data-v-6c1da8d7]{display:flex;gap:8px}.vg-btn-valid[data-v-6c1da8d7],.vg-btn-invalid[data-v-6c1da8d7]{padding:5px 14px;border-radius:4px;border:1px solid;font-size:13px;cursor:pointer;transition:background .15s}.vg-btn-valid[data-v-6c1da8d7]{background:#22c55e26;border-color:#22c55e;color:#22c55e}.vg-btn-valid[data-v-6c1da8d7]:hover{background:#22c55e4d}.vg-btn-invalid[data-v-6c1da8d7]{background:#ef444426;border-color:#ef4444;color:#ef4444}.vg-btn-invalid[data-v-6c1da8d7]:hover{background:#ef44444d}.vg-grid[data-v-6c1da8d7]{flex:1;display:grid;gap:8px;padding:12px;overflow-y:auto;align-content:start}.vg-card[data-v-6c1da8d7]{background:#1a2332;border-radius:6px;border:2px solid rgba(45,74,111,.3);overflow:hidden;display:flex;flex-direction:column;transition:border-color .2s,box-shadow .2s;cursor:pointer}.vg-card.selected[data-v-6c1da8d7]{border-color:#00b4d8;box-shadow:0 0 20px #00b4d899}.vg-card.keyboard-selected[data-v-6c1da8d7]{border-color:#fbbf24;box-shadow:0 0 16px #fbbf2480}.vg-card.selected.keyboard-selected[data-v-6c1da8d7]{border-color:#fbbf24;box-shadow:0 0 20px #fbbf2499}.vg-card-thumb[data-v-6c1da8d7]{flex:1;min-height:0;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#0a0e14}.vg-card-thumb img[data-v-6c1da8d7]{max-width:100%;max-height:100%;width:auto;height:auto;display:block;object-fit:contain}.vg-card.status-valid .vg-card-thumb img[data-v-6c1da8d7]{box-shadow:inset 0 0 0 3px #000c,0 0 0 4px #22c55e,0 0 16px #22c55e99}.vg-card.status-invalid .vg-card-thumb img[data-v-6c1da8d7]{box-shadow:inset 0 0 0 3px #000c,0 0 0 4px #ef4444,0 0 16px #ef444499}.vg-card-info[data-v-6c1da8d7]{display:flex;align-items:center;justify-content:space-between;padding:4px 6px;background:#0a1118d9;flex-shrink:0}.vg-conf-badge[data-v-6c1da8d7]{font-size:12px;font-weight:600;color:#00b4d8}.vg-card-actions[data-v-6c1da8d7]{display:flex;gap:3px}.vg-btn-action[data-v-6c1da8d7]{font-size:13px;padding:2px 6px;border-radius:3px;border:1px solid;background:#0000004d;cursor:pointer;transition:all .15s;font-weight:600}.vg-btn-valid[data-v-6c1da8d7]{border-color:#22c55e66;color:#22c55e}.vg-btn-valid[data-v-6c1da8d7]:hover,.vg-btn-valid.active[data-v-6c1da8d7]{background:#22c55e33;border-color:#22c55e}.vg-btn-invalid[data-v-6c1da8d7]{border-color:#ef444466;color:#ef4444}.vg-btn-invalid[data-v-6c1da8d7]:hover,.vg-btn-invalid.active[data-v-6c1da8d7]{background:#ef444433;border-color:#ef4444}.vg-btn-unvalidate[data-v-6c1da8d7]{border-color:#9ca3af66;color:#9ca3af}.vg-btn-unvalidate[data-v-6c1da8d7]:hover,.vg-btn-unvalidate.active[data-v-6c1da8d7]{background:#9ca3af33;border-color:#9ca3af}.vg-footer[data-v-6c1da8d7]{height:40px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:#0f1724e6;border-top:1px solid rgba(45,74,111,.3);flex-shrink:0}.vg-size-picker[data-v-6c1da8d7]{display:flex;gap:4px}.vg-size-picker button[data-v-6c1da8d7]{padding:4px 10px;font-size:12px;border-radius:4px;border:1px solid rgba(45,74,111,.4);background:#1a2332;color:#89a;cursor:pointer;text-transform:capitalize}.vg-size-picker button.active[data-v-6c1da8d7]{border-color:#00b4d8;color:#00b4d8;background:#00b4d81f}.vg-pagination[data-v-6c1da8d7]{display:flex;align-items:center;gap:12px;color:#c0ccd8;font-size:14px}.vg-page-input-wrap[data-v-6c1da8d7]{display:flex;align-items:center;gap:8px}.vg-page-input[data-v-6c1da8d7]{width:50px;background:#1a2332;border:1px solid rgba(45,74,111,.4);color:#c0ccd8;padding:4px 8px;border-radius:4px;font-size:14px;text-align:center;transition:border-color .2s}.vg-page-input[data-v-6c1da8d7]:focus{outline:none;border-color:#00b4d8}.vg-page-input[data-v-6c1da8d7]::-webkit-inner-spin-button,.vg-page-input[data-v-6c1da8d7]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.vg-page-total[data-v-6c1da8d7]{color:#89a;font-size:14px}.vg-pagination button[data-v-6c1da8d7]{background:#1a2332;border:1px solid rgba(45,74,111,.4);color:#c0ccd8;width:28px;height:28px;border-radius:4px;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center}.vg-pagination button[data-v-6c1da8d7]:disabled{opacity:.3;cursor:default}.vg-pagination button[data-v-6c1da8d7]:not(:disabled):hover{border-color:#00b4d8;color:#00b4d8}.ap-root[data-v-ed7949d3]{height:calc(100vh - 48px);display:flex;flex-direction:column;overflow:hidden;background:#0a1118}.ap-stats-row[data-v-ed7949d3]{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:20px;flex-shrink:0}.ap-stat-card[data-v-ed7949d3]{background:#0f172af2;border:1px solid rgba(45,74,111,.4);border-radius:8px;padding:20px;text-align:center}.ap-stat-num[data-v-ed7949d3]{display:block;font-size:32px;font-weight:700;color:#e2e8f0;margin-bottom:8px}.ap-stat-card.ap-valid .ap-stat-num[data-v-ed7949d3]{color:#22c55e}.ap-stat-card.ap-invalid .ap-stat-num[data-v-ed7949d3]{color:#ef4444}.ap-stat-label[data-v-ed7949d3]{display:block;font-size:13px;color:#89a;text-transform:uppercase;letter-spacing:.5px}.ap-body[data-v-ed7949d3]{flex:1;overflow-y:auto;padding:0 20px 20px;display:flex;flex-direction:column;gap:24px}.ap-section[data-v-ed7949d3]{background:#0f172af2;border:1px solid rgba(45,74,111,.4);border-radius:8px;padding:20px}.ap-section-title[data-v-ed7949d3]{margin:0 0 16px;font-size:18px;font-weight:600;color:#e2e8f0}.ap-table[data-v-ed7949d3]{width:100%;border-collapse:collapse;font-size:13px}.ap-table thead th[data-v-ed7949d3]{text-align:left;padding:10px 12px;background:#0000004d;color:#89a;font-weight:600;border-bottom:1px solid rgba(45,74,111,.4);cursor:pointer;-webkit-user-select:none;user-select:none}.ap-table thead th[data-v-ed7949d3]:hover{color:#00b4d8}.sort-ind[data-v-ed7949d3]{margin-left:4px;color:#00b4d8}.ap-table tbody td[data-v-ed7949d3]{padding:10px 12px;border-bottom:1px solid rgba(45,74,111,.2);color:#c0ccd8}.ap-username[data-v-ed7949d3]{font-weight:600;color:#e2e8f0}.ap-green[data-v-ed7949d3]{color:#22c55e}.ap-red[data-v-ed7949d3]{color:#ef4444}.ap-muted[data-v-ed7949d3]{color:#89a}.ap-empty[data-v-ed7949d3]{color:#89a;text-align:center;padding:40px;font-style:italic}.ap-changelog-section[data-v-ed7949d3]{flex:1;display:flex;flex-direction:column;min-height:400px}.ap-changelog-wrap[data-v-ed7949d3]{flex:1;overflow-y:auto;max-height:500px}.ap-changelog[data-v-ed7949d3]{font-size:12px}.footer[data-v-53a658bb]{height:40px;background:#0f172af2;border-top:1px solid rgba(45,74,111,.3);display:flex;align-items:center;justify-content:space-between;padding:0 24px;flex-shrink:0}.logos[data-v-53a658bb]{display:flex;align-items:center;gap:20px}.logo[data-v-53a658bb]{height:20px;filter:grayscale(100%) opacity(.6);transition:filter .3s ease}.logo[data-v-53a658bb]:hover{filter:grayscale(0%) opacity(1)}.copyright[data-v-53a658bb]{color:#6b7280;font-size:12px}.app[data-v-68a0f4be]{height:100vh;display:flex;flex-direction:column}.survey-bar[data-v-68a0f4be]{height:44px;background:#0f172ae0;border-bottom:1px solid rgba(45,74,111,.4);display:flex;align-items:center;padding:0 16px;gap:24px;flex-shrink:0}.survey-selector[data-v-68a0f4be]{display:flex;align-items:center;gap:12px}.survey-selector label[data-v-68a0f4be]{color:#89a;font-size:13px;white-space:nowrap}.survey-selector select[data-v-68a0f4be]{background:#1a2332;border:1px solid rgba(45,74,111,.5);color:#e2e8f0;padding:6px 12px;border-radius:4px;min-width:150px;font-size:14px;cursor:pointer}.survey-selector.survey select[data-v-68a0f4be]{min-width:340px}.survey-selector select[data-v-68a0f4be]:focus{outline:none;border-color:#00b4d8}.status[data-v-68a0f4be]{color:#00b4d8;font-size:13px;display:flex;align-items:center;gap:8px}.panels[data-v-68a0f4be]{flex:1;display:flex;overflow:hidden;min-height:0}.panel[data-v-68a0f4be]{position:relative;overflow:hidden}.map-panel[data-v-68a0f4be]{flex:0 0 auto}.resizer[data-v-68a0f4be]{width:4px;flex-shrink:0;background:#2d4a6f80;cursor:col-resize;transition:background .15s}.resizer[data-v-68a0f4be]:hover{background:#00b4d8}.right-column[data-v-68a0f4be]{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.image-panel[data-v-68a0f4be]{flex:1;min-height:0;overflow:hidden}.view-placeholder[data-v-68a0f4be]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-secondary)}.view-placeholder h2[data-v-68a0f4be]{color:var(--cyan-glow);font-size:22px;font-weight:600}.back-breadcrumb[data-v-68a0f4be]{position:absolute;top:56px;left:16px;z-index:100;background:#00b4d826;border:1px solid #00b4d8;color:#00b4d8;padding:6px 14px;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s}.back-breadcrumb[data-v-68a0f4be]:hover{background:#00b4d840}
