:root{--text:#374151;--text-h:#111827;--text-muted:#6b7280;--bg:#f9fafb;--bg-card:#fff;--border:#e5e7eb;--accent:#2563eb;--accent-light:#dbeafe;--green:#059669;--green-light:#d1fae5;--orange:#d97706;--orange-light:#fef3c7;--red:#dc2626;--red-light:#fee2e2;--purple:#7c3aed;--purple-light:#ede9fe;--shadow:0 1px 3px #0000001a, 0 1px 2px #0000000f;color:var(--text);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.5}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--text:#d1d5db;--text-h:#f3f4f6;--text-muted:#9ca3af;--bg:#111827;--bg-card:#1f2937;--border:#374151;--accent:#60a5fa;--accent-light:#1e3a5f;--green:#34d399;--green-light:#064e3b;--orange:#fbbf24;--orange-light:#78350f;--red:#f87171;--red-light:#7f1d1d;--purple:#a78bfa;--purple-light:#4c1d95;--shadow:0 1px 3px #0000004d, 0 1px 2px #0003}}:root[data-theme=dark]{--text:#d1d5db;--text-h:#f3f4f6;--text-muted:#9ca3af;--bg:#111827;--bg-card:#1f2937;--border:#374151;--accent:#60a5fa;--accent-light:#1e3a5f;--green:#34d399;--green-light:#064e3b;--orange:#fbbf24;--orange-light:#78350f;--red:#f87171;--red-light:#7f1d1d;--purple:#a78bfa;--purple-light:#4c1d95;--shadow:0 1px 3px #0000004d, 0 1px 2px #0003}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text)}#app{max-width:1400px;margin:0 auto;padding:16px}input,select,button,textarea{font:inherit;color:inherit}.table-wrap[data-v-4613f371]{background:var(--bg-card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:8px;overflow:hidden}table[data-v-4613f371]{border-collapse:collapse;width:100%}thead[data-v-4613f371]{background:var(--bg);z-index:1;position:sticky;top:0}th[data-v-4613f371]{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);text-align:left;border-bottom:1px solid var(--border);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;padding:10px 12px;font-size:11px;font-weight:600}th[data-v-4613f371]:hover{color:var(--text-h)}td[data-v-4613f371]{border-bottom:1px solid var(--border);vertical-align:middle;padding:8px 12px;font-size:13px}.row[data-v-4613f371]{cursor:pointer;transition:background .1s}.row[data-v-4613f371]:hover{background:var(--accent-light)}.row.resolved[data-v-4613f371]{opacity:.55}.mono[data-v-4613f371]{font-family:ui-monospace,Consolas,monospace;font-size:12px}.channel-name[data-v-4613f371]{color:var(--text-h);font-weight:500}.count-badge[data-v-4613f371]{text-align:center;background:var(--accent-light);min-width:28px;color:var(--accent);font-variant-numeric:tabular-nums;border-radius:10px;padding:2px 6px;font-size:12px;font-weight:600;display:inline-block}.badge[data-v-4613f371]{white-space:nowrap;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.badge-green[data-v-4613f371]{background:var(--green-light);color:var(--green)}.badge-red[data-v-4613f371]{background:var(--red-light);color:var(--red)}.badge-purple[data-v-4613f371]{background:var(--purple-light);color:var(--purple)}.badge-orange[data-v-4613f371]{background:var(--orange-light);color:var(--orange)}.badge-resolved[data-v-4613f371]{background:var(--green-light);color:var(--green)}.badge-conflict[data-v-4613f371]{background:var(--orange-light);color:var(--orange)}.pp-detail[data-v-4613f371]{color:var(--text-muted);margin-left:6px;font-size:12px;display:inline}.pp-override-hint[data-v-4613f371]{color:var(--accent);margin-left:4px;font-size:11px;font-style:italic;display:inline}.note-indicator[data-v-4613f371]{cursor:help}.empty[data-v-4613f371]{text-align:center;color:var(--text-muted);padding:32px}.table-footer[data-v-4613f371]{color:var(--text-muted);border-top:1px solid var(--border);padding:8px 12px;font-size:12px}.col-count[data-v-4613f371],.col-port[data-v-4613f371]{text-align:center}@media (width<=768px){.col-ip[data-v-4613f371],.col-port[data-v-4613f371],.col-date[data-v-4613f371]{display:none}th[data-v-4613f371],td[data-v-4613f371]{padding:8px}}.stats-bar[data-v-8d0212cb]{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.stat[data-v-8d0212cb]{background:var(--bg-card);border:1px solid var(--border);min-width:90px;box-shadow:var(--shadow);border-radius:8px;flex-direction:column;padding:10px 16px;display:flex}.stat-value[data-v-8d0212cb]{color:var(--text-h);font-variant-numeric:tabular-nums;font-size:20px;font-weight:700}.stat-label[data-v-8d0212cb]{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:11px}.stat-pp .stat-value[data-v-8d0212cb]{color:var(--green)}.stat-nevystaven .stat-value[data-v-8d0212cb]{color:var(--red)}.stat-vepa .stat-value[data-v-8d0212cb]{color:var(--purple)}.stat-nera .stat-value[data-v-8d0212cb]{color:var(--orange)}.stat-conflict[data-v-8d0212cb]{border-color:var(--orange)}.stat-conflict .stat-value[data-v-8d0212cb]{color:var(--orange)}.legend-toggle[data-v-8d0212cb]{justify-content:center;align-items:center;margin-left:auto;display:flex;position:relative}.legend-btn[data-v-8d0212cb]{color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;align-items:center;gap:6px;font-size:12px;font-weight:500;list-style:none;display:flex}.legend-btn[data-v-8d0212cb]::-webkit-details-marker{display:none}.legend-btn[data-v-8d0212cb]:before{content:"?";background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;font-weight:700;display:inline-flex}.legend-btn[data-v-8d0212cb]:hover{color:var(--text-h)}.legend-popup[data-v-8d0212cb]{background:var(--bg-card);border:1px solid var(--border);z-index:50;border-radius:8px;min-width:320px;margin-top:6px;padding:12px 16px;position:absolute;top:100%;right:0;box-shadow:0 4px 16px #00000040}.legend-grid[data-v-8d0212cb]{color:var(--text);grid-template-columns:auto 1fr;gap:4px 12px;font-size:12px;display:grid}.lc[data-v-8d0212cb]{color:var(--accent);font-family:ui-monospace,Consolas,monospace;font-weight:600}.overlay[data-v-f6c9361a]{z-index:100;background:#0006;justify-content:flex-end;display:flex;position:fixed;inset:0}.panel[data-v-f6c9361a]{background:var(--bg-card);border-left:1px solid var(--border);flex-direction:column;width:480px;max-width:100%;height:100%;display:flex;overflow-y:auto}.panel-header[data-v-f6c9361a]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.panel-header h2[data-v-f6c9361a]{color:var(--text-h);font-size:16px;font-weight:700}.close-btn[data-v-f6c9361a]{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:24px;line-height:1}.close-btn[data-v-f6c9361a]:hover{color:var(--text-h)}.panel-body[data-v-f6c9361a]{flex-direction:column;gap:20px;padding:20px;display:flex}.info-grid[data-v-f6c9361a]{grid-template-columns:1fr 1fr;gap:12px;display:grid}.info-item[data-v-f6c9361a]{flex-direction:column;gap:2px;display:flex}.info-label[data-v-f6c9361a]{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);font-size:11px}.info-value[data-v-f6c9361a]{color:var(--text-h);font-size:14px;font-weight:500}.mono[data-v-f6c9361a]{font-family:ui-monospace,Consolas,monospace}.section h3[data-v-f6c9361a]{color:var(--text-h);text-transform:uppercase;letter-spacing:.3px;margin-bottom:8px;font-size:13px;font-weight:600}.pp-value[data-v-f6c9361a]{color:var(--text);font-size:14px}.pp-assigned[data-v-f6c9361a]{color:var(--green);font-weight:600}.pp-hint[data-v-f6c9361a]{color:var(--accent);margin-left:6px;font-size:12px;font-style:italic}.pp-original[data-v-f6c9361a]{color:var(--text-muted);margin-top:4px;font-size:12px}.pp-entries[data-v-f6c9361a]{flex-direction:column;gap:4px;margin-top:8px;display:flex}.pp-entry[data-v-f6c9361a]{background:var(--bg);border-radius:4px;align-items:center;gap:8px;padding:4px 8px;font-size:13px;display:flex}.pp-num[data-v-f6c9361a]{color:var(--text-h);font-family:ui-monospace,Consolas,monospace;font-weight:600}.pp-code[data-v-f6c9361a]{color:var(--accent);font-size:12px;font-weight:600}.pp-req[data-v-f6c9361a]{color:var(--text-muted);font-size:12px}.serial-list[data-v-f6c9361a]{flex-wrap:wrap;gap:4px;display:flex}.serial[data-v-f6c9361a]{background:var(--bg);border:1px solid var(--border);color:var(--text-h);border-radius:4px;padding:2px 8px;font-family:ui-monospace,Consolas,monospace;font-size:12px}.form-group[data-v-f6c9361a]{flex-direction:column;gap:4px;margin-bottom:10px;display:flex}.form-group label[data-v-f6c9361a]{color:var(--text-muted);font-size:12px;font-weight:500}.checkbox-label[data-v-f6c9361a]{cursor:pointer;align-items:center;color:var(--text-h)!important;flex-direction:row!important;gap:8px!important;font-size:14px!important}.form-group input[type=text][data-v-f6c9361a],.form-group textarea[data-v-f6c9361a]{border:1px solid var(--border);background:var(--bg);resize:vertical;border-radius:6px;padding:8px 10px;font-size:13px}.form-group input[type=text][data-v-f6c9361a]:focus,.form-group textarea[data-v-f6c9361a]:focus{outline:2px solid var(--accent);outline-offset:-1px}.form-actions[data-v-f6c9361a]{gap:8px;display:flex}.btn[data-v-f6c9361a]{cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-size:13px;font-weight:600;transition:opacity .15s}.btn[data-v-f6c9361a]:hover{opacity:.85}.btn-primary[data-v-f6c9361a]{background:var(--accent);color:#fff}.btn-danger[data-v-f6c9361a]{background:var(--red);color:#fff}.conflict-section[data-v-f6c9361a]{background:var(--orange-light);border:1px solid var(--orange);border-radius:8px;padding:16px}.conflict-section h3[data-v-f6c9361a]{color:var(--orange)}.conflict-desc[data-v-f6c9361a]{color:var(--text);margin-bottom:12px;font-size:13px}.conflict-row[data-v-f6c9361a]{margin-bottom:12px}.conflict-label[data-v-f6c9361a]{color:var(--text-h);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.conflict-options[data-v-f6c9361a]{gap:8px;display:flex}.conflict-option[data-v-f6c9361a]{border:2px solid var(--border);background:var(--bg-card);cursor:pointer;text-align:left;border-radius:8px;flex-direction:column;flex:1;gap:4px;padding:10px 12px;transition:border-color .15s;display:flex}.conflict-option[data-v-f6c9361a]:hover{border-color:var(--accent)}.conflict-option.chosen[data-v-f6c9361a]{border-color:var(--accent);background:var(--accent-light)}.conflict-source[data-v-f6c9361a]{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);font-size:10px;font-weight:600}.conflict-val[data-v-f6c9361a]{color:var(--text-h);word-break:break-all;font-size:13px;font-weight:500}.login-page[data-v-b84657dd]{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card[data-v-b84657dd]{background:var(--bg-card);border:1px solid var(--border);text-align:center;width:100%;max-width:380px;box-shadow:var(--shadow);border-radius:12px;padding:40px 36px}.login-icon[data-v-b84657dd]{color:var(--accent);margin-bottom:16px}h1[data-v-b84657dd]{color:var(--text-h);margin-bottom:4px;font-size:20px;font-weight:700}.subtitle[data-v-b84657dd]{color:var(--text-muted);margin-bottom:28px;font-size:13px}.error-box[data-v-b84657dd]{background:var(--red-light);color:var(--red);border-radius:6px;margin-bottom:16px;padding:10px 14px;font-size:13px}.google-btn[data-v-b84657dd]{color:#3c4043;cursor:pointer;background:#fff;border:1px solid #dadce0;border-radius:6px;align-items:center;gap:10px;padding:10px 24px;font-size:14px;font-weight:500;text-decoration:none;transition:box-shadow .15s,background .15s;display:inline-flex}.google-btn[data-v-b84657dd]:hover{background:#f8f9fa;box-shadow:0 1px 3px #00000026}.overlay[data-v-c00a984b]{z-index:100;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.dialog[data-v-c00a984b]{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;width:520px;max-width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #0000004d}.dialog-header[data-v-c00a984b]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.dialog-header h2[data-v-c00a984b]{color:var(--text-h);font-size:16px;font-weight:700}.close-btn[data-v-c00a984b]{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:24px;line-height:1}.close-btn[data-v-c00a984b]:hover{color:var(--text-h)}.dialog-body[data-v-c00a984b]{padding:20px}.hint[data-v-c00a984b]{color:var(--text-muted);margin-bottom:16px;font-size:13px}.error-box[data-v-c00a984b]{background:var(--red-light);color:var(--red);border-radius:6px;margin-bottom:12px;padding:8px 12px;font-size:13px}.upload-slots[data-v-c00a984b]{flex-direction:column;gap:16px;display:flex}.upload-slot[data-v-c00a984b]{flex-direction:column;gap:6px;display:flex}.slot-label[data-v-c00a984b]{color:var(--text-h);font-size:13px;font-weight:600}.current-file[data-v-c00a984b]{align-items:center;gap:8px;font-size:12px;display:flex}.current-name[data-v-c00a984b]{color:var(--text);font-family:ui-monospace,Consolas,monospace}.current-meta[data-v-c00a984b]{color:var(--text-muted)}.current-missing[data-v-c00a984b]{color:var(--text-muted);font-style:italic}.drop-zone[data-v-c00a984b]{border:2px dashed var(--border);border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:52px;padding:16px;transition:border-color .15s,background .15s;display:flex}.drop-zone.dragover[data-v-c00a984b]{border-color:var(--accent);background:var(--accent-light)}.drop-zone.filled[data-v-c00a984b]{border-style:solid;border-color:var(--green);background:var(--green-light)}.drop-text[data-v-c00a984b]{color:var(--text-muted);font-size:13px}.browse-btn[data-v-c00a984b]{color:var(--accent);cursor:pointer;font-size:13px;font-weight:500;text-decoration:underline}.browse-btn[data-v-c00a984b]:hover{opacity:.8}.file-chosen[data-v-c00a984b]{color:var(--text-h);font-family:ui-monospace,Consolas,monospace;font-size:13px;font-weight:500}.remove-file[data-v-c00a984b]{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:18px;line-height:1}.remove-file[data-v-c00a984b]:hover{color:var(--red)}.dialog-footer[data-v-c00a984b]{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding:12px 20px;display:flex}.btn[data-v-c00a984b]{cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-size:13px;font-weight:600;transition:opacity .15s}.btn[data-v-c00a984b]:hover{opacity:.85}.btn[data-v-c00a984b]:disabled{opacity:.5;cursor:default}.btn-primary[data-v-c00a984b]{background:var(--accent);color:#fff}.btn-secondary[data-v-c00a984b]{background:var(--bg);color:var(--text);border:1px solid var(--border)}.header[data-v-457a08cf]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.header-left[data-v-457a08cf]{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}h1[data-v-457a08cf]{color:var(--text-h);font-size:22px;font-weight:700;line-height:1.2}.subtitle[data-v-457a08cf]{color:var(--text-muted);font-size:13px}.btn[data-v-457a08cf]{border:1px solid var(--border);background:var(--bg-card);color:var(--text-h);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:7px 14px;font-size:13px;font-weight:500;transition:box-shadow .15s;display:inline-flex}.btn[data-v-457a08cf]:hover{box-shadow:var(--shadow)}.btn[data-v-457a08cf]:disabled{opacity:.5;cursor:default}.btn-reload svg[data-v-457a08cf]{width:14px;height:14px}.btn-small[data-v-457a08cf]{color:var(--text-muted);padding:4px 10px;font-size:12px;text-decoration:none}.header-right[data-v-457a08cf]{align-items:center;gap:12px;display:flex}.user-info[data-v-457a08cf]{align-items:center;gap:8px;display:flex}.user-avatar[data-v-457a08cf]{border-radius:50%;width:28px;height:28px}.user-name[data-v-457a08cf]{color:var(--text-muted);font-size:13px}.toolbar[data-v-457a08cf]{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}.search-box[data-v-457a08cf]{background:var(--bg-card);border:1px solid var(--border);min-width:200px;max-width:400px;color:var(--text-muted);border-radius:6px;flex:1;align-items:center;gap:8px;padding:6px 12px;display:flex}.search-box input[data-v-457a08cf]{background:0 0;border:none;outline:none;flex:1;font-size:13px}.filter-group[data-v-457a08cf]{flex-wrap:wrap;gap:4px;display:flex}.filter-btn[data-v-457a08cf]{border:1px solid var(--border);background:var(--bg-card);color:var(--text-muted);cursor:pointer;border-radius:16px;padding:5px 12px;font-size:12px;font-weight:500;transition:all .15s}.filter-btn[data-v-457a08cf]:hover{color:var(--text-h)}.filter-btn.active[data-v-457a08cf]{background:var(--accent);color:#fff;border-color:var(--accent)}.error-bar[data-v-457a08cf]{background:var(--red-light);color:var(--red);border-radius:6px;margin-bottom:12px;padding:8px 14px;font-size:13px}.loading[data-v-457a08cf]{text-align:center;color:var(--text-muted);padding:48px}
