.device-row[data-v-1595c5e4]{padding:10px 16px;border-radius:6px;cursor:pointer;transition:background .15s,box-shadow .15s,border-color .15s;border:1px solid var(--border);border-left:3px solid var(--border);background:var(--surface);margin-bottom:6px}.device-row[data-v-1595c5e4]:hover{background:var(--surface-2);box-shadow:0 1px 4px #0000000f}.device-row.selected[data-v-1595c5e4]{border-left-color:var(--accent);background:var(--accent-soft);box-shadow:0 1px 6px #c0392b1a}.device-row.welding[data-v-1595c5e4]{border-left-color:#e67e22}.device-row.online[data-v-1595c5e4]{border-left-color:#27ae60}.device-row.offline[data-v-1595c5e4]{border-left-color:var(--border-strong)}.row-header[data-v-1595c5e4]{display:flex;align-items:center;gap:10px;margin-bottom:8px}.device-id[data-v-1595c5e4]{font-weight:700;font-size:14px;color:var(--text-strong)}.status-badge[data-v-1595c5e4]{font-size:10px;font-weight:700;padding:2px 8px;border-radius:3px;text-transform:uppercase;letter-spacing:.5px;min-width:68px;text-align:center;flex-shrink:0}.status-badge.online[data-v-1595c5e4]{background:var(--success-bg);color:var(--success-text)}.status-badge.welding[data-v-1595c5e4]{background:var(--warning-bg);color:var(--warning-text);animation:pulse-welding-1595c5e4 1.5s ease-in-out infinite}.status-badge.offline[data-v-1595c5e4]{background:var(--surface-3);color:var(--text-muted)}@keyframes pulse-welding-1595c5e4{0%,to{opacity:1}50%{opacity:.6}}.last-seen[data-v-1595c5e4]{font-size:11px;color:var(--text-faint)}.row-actions[data-v-1595c5e4]{margin-left:auto;display:flex;gap:4px}.btn-icon[data-v-1595c5e4]{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:4px;background:transparent;color:var(--text-faint);cursor:pointer;transition:background .15s,color .15s}.btn-icon[data-v-1595c5e4]:hover{background:var(--surface-3);color:var(--text-2)}.btn-delete[data-v-1595c5e4]:hover{background:var(--danger-bg);color:var(--accent)}.row-values[data-v-1595c5e4]{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;background:var(--surface-2);border-radius:4px;padding:6px 4px}.val-cell[data-v-1595c5e4]{display:flex;align-items:baseline;gap:4px;padding:2px 8px;min-width:0}.val-label[data-v-1595c5e4]{font-size:11px;font-weight:600;color:var(--text-muted);min-width:28px;text-align:right;flex-shrink:0}.val-num[data-v-1595c5e4]{font-family:SF Mono,Cascadia Code,Consolas,Liberation Mono,monospace;font-size:14px;font-weight:700;color:var(--text-strong);min-width:52px;text-align:right;flex-shrink:0;font-variant-numeric:tabular-nums}.val-unit[data-v-1595c5e4]{font-size:10px;color:var(--text-faint);flex-shrink:0}.quality-badge[data-v-1595c5e4]{font-size:10px;font-weight:700;padding:2px 8px;border-radius:3px;text-transform:uppercase;letter-spacing:.5px;min-width:48px;text-align:center;flex-shrink:0;cursor:help}.quality-badge.q-green[data-v-1595c5e4]{background:var(--success-bg);color:var(--success-text)}.quality-badge.q-yellow[data-v-1595c5e4]{background:var(--warning-bg);color:var(--warning-text)}.quality-badge.q-red[data-v-1595c5e4]{background:var(--danger-bg);color:var(--accent);animation:pulse-welding-1595c5e4 1.5s ease-in-out infinite}.quality-badge.q-idle[data-v-1595c5e4]{background:var(--surface-3);color:var(--text-muted)}.device-row.hidden[data-v-1595c5e4]{opacity:.45}.device-row.hidden .device-id[data-v-1595c5e4]{text-decoration:line-through}.donut-gauge[data-v-bc482d94]{display:flex;flex-direction:column;align-items:center}.donut-svg[data-v-bc482d94]{width:100%;height:auto}.value-arc[data-v-bc482d94]{transition:stroke-dashoffset .4s ease,stroke .4s ease}.value-text[data-v-bc482d94]{font-size:16px;font-weight:700;fill:var(--text-strong)}.unit-text[data-v-bc482d94]{font-size:8px;fill:var(--text-muted)}.gauge-label[data-v-bc482d94]{margin-top:-8px;font-size:11px;font-weight:600;color:var(--text-2);text-align:center;text-transform:uppercase;letter-spacing:.5px}.detail-panel[data-v-fb81041f]{background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--accent);border-radius:4px;padding:24px;box-shadow:0 2px 8px #0000000d}.detail-header[data-v-fb81041f]{display:flex;align-items:center;gap:12px;margin-bottom:20px}.detail-title[data-v-fb81041f]{font-size:16px;font-weight:700;color:var(--text-strong);letter-spacing:.3px}.source-badge[data-v-fb81041f]{font-size:10px;font-weight:700;padding:2px 8px;border-radius:3px;text-transform:uppercase;letter-spacing:.5px}.source-badge.fronius[data-v-fb81041f]{background:var(--info-bg);color:var(--info-text)}.source-badge.sensorbox[data-v-fb81041f]{background:var(--danger-bg);color:var(--accent)}.gauges[data-v-fb81041f]{display:flex;gap:16px;flex-wrap:wrap;justify-content:center}.info-section[data-v-fb81041f]{margin-top:20px}.info-row[data-v-fb81041f]{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:6px}.info-row[data-v-fb81041f]:last-child{margin-bottom:0}.info-chip[data-v-fb81041f]{font-size:11px;padding:3px 10px;border-radius:3px;background:var(--surface-3);color:var(--text-2);font-weight:600}.info-chip.ok[data-v-fb81041f]{background:var(--success-bg);color:var(--success-text)}.info-chip.warn[data-v-fb81041f]{background:var(--warning-bg);color:var(--warning-text)}.info-chip.error[data-v-fb81041f]{background:var(--danger-bg);color:var(--accent)}.info-chip.accent[data-v-fb81041f]{background:var(--info-bg);color:var(--info-text)}.quality-section[data-v-fb81041f]{margin-top:20px;padding:16px;background:var(--surface-2);border-radius:6px;border:1px solid var(--border)}.quality-header[data-v-fb81041f]{display:flex;align-items:center;gap:12px;margin-bottom:12px}.quality-level[data-v-fb81041f]{font-size:12px;font-weight:800;padding:3px 12px;border-radius:3px;text-transform:uppercase;letter-spacing:.5px}.quality-level.q-green[data-v-fb81041f]{background:var(--success-bg);color:var(--success-text)}.quality-level.q-yellow[data-v-fb81041f]{background:var(--warning-bg);color:var(--warning-text)}.quality-level.q-red[data-v-fb81041f]{background:var(--danger-bg);color:var(--accent)}.quality-level.q-idle[data-v-fb81041f]{background:var(--surface-3);color:var(--text-muted)}.quality-section.quality-idle[data-v-fb81041f]{opacity:.6}.quality-profile-info[data-v-fb81041f]{font-size:11px;font-weight:700;padding:2px 8px;border-radius:3px;background:var(--info-bg);color:var(--info-text);text-transform:uppercase;letter-spacing:.3px}.quality-confidence[data-v-fb81041f]{font-size:13px;font-weight:600;color:var(--text-strong)}.quality-phase[data-v-fb81041f]{font-size:11px;color:var(--text-muted);margin-left:auto}.quality-scores[data-v-fb81041f]{display:flex;flex-direction:column;gap:8px}.score-bar[data-v-fb81041f]{display:flex;align-items:center;gap:8px}.score-label[data-v-fb81041f]{font-size:11px;font-weight:600;color:var(--text-muted);min-width:100px;text-align:right;flex-shrink:0}.score-track[data-v-fb81041f]{flex:1;height:8px;background:var(--surface-3);border-radius:4px;overflow:hidden}.score-fill[data-v-fb81041f]{height:100%;border-radius:4px;transition:width .4s ease}.score-fill.q-green[data-v-fb81041f]{background:#27ae60}.score-fill.q-yellow[data-v-fb81041f]{background:#e67e22}.score-fill.q-red[data-v-fb81041f]{background:var(--accent)}.score-val[data-v-fb81041f]{font-size:11px;font-weight:700;color:var(--text-strong);min-width:32px;text-align:right;font-variant-numeric:tabular-nums}.quality-reasons[data-v-fb81041f]{margin-top:10px;display:flex;gap:6px;flex-wrap:wrap}.reason-chip[data-v-fb81041f]{font-size:10px;padding:2px 8px;border-radius:3px;background:var(--danger-bg);color:var(--accent);font-weight:600}.history-panel[data-v-0dca9662]{background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--accent);border-radius:4px;padding:24px;box-shadow:0 2px 8px #0000000d}.history-title[data-v-0dca9662]{margin:0 0 16px;font-size:16px;font-weight:700;color:var(--text-strong)}.filter-row[data-v-0dca9662]{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin-bottom:16px}.filter-row label[data-v-0dca9662]{font-size:12px;font-weight:600;color:var(--text-2);display:flex;flex-direction:column;gap:4px}.filter-row input[data-v-0dca9662],.filter-row select[data-v-0dca9662]{padding:6px 10px;border:1px solid var(--border-strong);border-radius:4px;font-size:13px;background:var(--surface)}.filter-row input[data-v-0dca9662]:focus,.filter-row select[data-v-0dca9662]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #c0392b1f}.filter-row button[data-v-0dca9662]{padding:8px 20px;background:var(--accent);color:var(--on-accent);border:none;border-radius:4px;font-weight:600;cursor:pointer;font-size:13px;transition:background .15s}.filter-row button[data-v-0dca9662]:disabled{opacity:.5;cursor:not-allowed}.filter-row button[data-v-0dca9662]:hover:not(:disabled){background:var(--accent-hover)}.error-msg[data-v-0dca9662]{color:var(--accent);font-size:13px;margin-bottom:12px}.auto-agg-hint[data-v-0dca9662]{background:var(--warning-bg);color:var(--warning-text);border:1px solid var(--warning-border);border-radius:4px;padding:8px 12px;font-size:12px;margin-bottom:12px}.chart-area[data-v-0dca9662]{margin-top:8px}.chart-toolbar[data-v-0dca9662]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.point-count[data-v-0dca9662]{font-size:11px;color:var(--text-faint);display:flex;align-items:center;gap:6px}.agg-badge[data-v-0dca9662]{display:inline-block;padding:1px 6px;font-size:10px;font-weight:600;background:var(--surface-3);color:var(--text-2);border-radius:3px}.agg-badge.raw[data-v-0dca9662]{background:var(--success-bg);color:var(--success-text)}.reload-indicator[data-v-0dca9662]{display:inline-block;animation:spin-0dca9662 .8s linear infinite;font-size:13px;color:var(--accent)}@keyframes spin-0dca9662{to{transform:rotate(360deg)}}.reset-zoom-btn[data-v-0dca9662]{padding:4px 12px;font-size:11px;font-weight:600;color:var(--accent);background:var(--surface);border:1px solid var(--accent);border-radius:4px;cursor:pointer;transition:background .15s,color .15s}.reset-zoom-btn[data-v-0dca9662]:hover{background:var(--accent);color:var(--on-accent)}.logbook-legend[data-v-0dca9662]{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px;font-size:12px;color:var(--text-2)}.lb-legend-title[data-v-0dca9662]{font-weight:700}.lb-legend-item[data-v-0dca9662]{display:inline-flex;align-items:center;gap:5px}.lb-swatch[data-v-0dca9662]{width:10px;height:10px;border-radius:2px}.lb-legend-hint[data-v-0dca9662]{color:var(--text-muted);font-size:11px}.chart-container[data-v-0dca9662]{position:relative;height:350px;background:var(--surface-2);border:1px solid var(--border);border-radius:4px;padding:8px}.empty-msg[data-v-0dca9662]{text-align:center;color:var(--text-faint);font-size:13px;padding:24px}.admin-panel[data-v-9771f054]{max-width:900px;margin:0 auto}.admin-title[data-v-9771f054]{font-size:18px;font-weight:800;color:var(--text-strong);border-left:3px solid var(--accent);padding-left:12px;margin-bottom:24px}.admin-section[data-v-9771f054]{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:20px;margin-bottom:20px}.section-heading[data-v-9771f054]{font-size:14px;font-weight:700;color:var(--text-strong);text-transform:uppercase;letter-spacing:.5px;margin-bottom:16px}.status-loading[data-v-9771f054]{color:var(--text-muted);font-size:13px}.status-grid[data-v-9771f054]{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.status-item[data-v-9771f054]{display:flex;flex-direction:column;gap:2px}.status-label[data-v-9771f054]{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.status-value[data-v-9771f054]{font-size:15px;font-weight:700;color:var(--text-strong)}.status-value.val-ok[data-v-9771f054]{color:var(--success-text)}.status-value.val-off[data-v-9771f054]{color:var(--danger-text)}.editable-threshold[data-v-9771f054]{cursor:pointer;border-bottom:1px dashed #7f8c8d;transition:color .2s}.editable-threshold[data-v-9771f054]:hover{color:#e67e22}.edit-icon[data-v-9771f054]{font-size:12px;margin-left:4px;opacity:.4}.editable-threshold:hover .edit-icon[data-v-9771f054]{opacity:1}.train-form[data-v-9771f054]{display:flex;flex-direction:column;gap:12px}.form-row[data-v-9771f054]{display:flex;align-items:center;gap:12px}.form-label[data-v-9771f054]{font-size:13px;font-weight:600;color:var(--text-2);min-width:200px;flex-shrink:0}.form-select[data-v-9771f054],.form-input[data-v-9771f054]{padding:7px 10px;border:1px solid var(--border-strong);border-radius:4px;font-size:13px;color:var(--text);background:var(--surface);flex:1;max-width:320px}.form-select[data-v-9771f054]:focus,.form-input[data-v-9771f054]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #c0392b1a}.form-input-sm[data-v-9771f054]{max-width:100px}.btn-train[data-v-9771f054]{padding:9px 24px;background:var(--accent);color:var(--on-accent);font-size:13px;font-weight:700;border:none;border-radius:4px;cursor:pointer;transition:background .15s;letter-spacing:.3px}.btn-train[data-v-9771f054]:hover:not(:disabled){background:var(--accent-hover)}.btn-train[data-v-9771f054]:disabled{background:var(--border-strong);cursor:not-allowed}.train-result[data-v-9771f054]{margin-top:16px;padding:14px 16px;border-radius:6px;font-size:13px}.train-result.success[data-v-9771f054]{background:var(--success-bg);border:1px solid var(--success-text)}.train-result.error[data-v-9771f054]{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-text)}.result-header[data-v-9771f054]{font-weight:700;margin-bottom:8px;font-size:14px}.train-result.success .result-header[data-v-9771f054]{color:var(--success-text)}.result-row[data-v-9771f054]{display:flex;gap:8px;margin-bottom:4px}.result-label[data-v-9771f054]{font-weight:600;color:var(--text-2);min-width:130px;flex-shrink:0}.result-value[data-v-9771f054]{color:var(--text-strong);display:flex;flex-wrap:wrap;gap:4px}.profile-chip[data-v-9771f054]{font-size:11px;padding:2px 8px;border-radius:3px;background:var(--info-bg);color:var(--info-text);font-weight:600;font-family:SF Mono,Cascadia Code,Consolas,monospace}.empty-profiles[data-v-9771f054]{color:var(--text-muted);font-size:13px;text-align:center;padding:24px}.profile-group[data-v-9771f054]{margin-bottom:16px;border:1px solid var(--border);border-radius:4px;overflow:hidden}.profile-group-header[data-v-9771f054]{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--surface-2);border-bottom:1px solid var(--border)}.profile-device-id[data-v-9771f054]{font-size:14px;font-weight:700;color:var(--text-strong)}.btn-delete-profile[data-v-9771f054]{padding:4px 12px;font-size:11px;font-weight:600;color:var(--accent);background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:3px;cursor:pointer;transition:background .15s}.btn-delete-profile[data-v-9771f054]:hover{background:var(--danger-border)}.profile-table[data-v-9771f054]{width:100%;border-collapse:collapse;font-size:13px}.profile-table th[data-v-9771f054]{text-align:left;padding:8px 14px;font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;background:var(--surface-2);border-bottom:1px solid var(--border)}.profile-table td[data-v-9771f054]{padding:8px 14px;border-bottom:1px solid var(--divider);color:var(--text)}.cell-key[data-v-9771f054]{font-family:SF Mono,Cascadia Code,Consolas,monospace;font-size:12px;color:var(--text-2)}.bool-badge[data-v-9771f054]{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:3px;font-size:12px;font-weight:700}.bool-badge.yes[data-v-9771f054]{background:var(--success-bg);color:var(--success-text)}.bool-badge.no[data-v-9771f054]{background:var(--surface-3);color:var(--text-faint)}.btn-refresh[data-v-9771f054]{margin-top:12px;padding:6px 16px;font-size:12px;font-weight:600;color:var(--text-2);background:var(--surface-3);border:1px solid var(--border-strong);border-radius:4px;cursor:pointer;transition:background .15s}.btn-refresh[data-v-9771f054]:hover:not(:disabled){background:var(--surface-3)}.btn-refresh[data-v-9771f054]:disabled{opacity:.5;cursor:not-allowed}.fault-hint[data-v-9771f054]{font-size:12px;color:var(--text-muted);margin-bottom:12px}.fault-device[data-v-9771f054]{margin-bottom:12px}.fault-device-header[data-v-9771f054]{font-size:13px;font-weight:700;color:var(--text-strong);padding:6px 0;border-bottom:1px solid var(--border);margin-bottom:6px}.fault-empty[data-v-9771f054]{font-size:12px;color:var(--text-faint);padding:4px 0}.fault-list[data-v-9771f054]{display:flex;flex-direction:column;gap:4px}.fault-entry[data-v-9771f054]{display:flex;align-items:center;gap:8px;font-size:12px;padding:4px 8px;border-radius:3px;background:var(--warning-bg);border:1px solid var(--warning-border)}.fault-entry.active[data-v-9771f054]{background:var(--danger-bg);border-color:var(--accent)}.fault-type[data-v-9771f054]{font-weight:700;color:var(--warning-text);min-width:160px}.fault-entry.active .fault-type[data-v-9771f054]{color:var(--danger-text)}.fault-time[data-v-9771f054]{font-family:SF Mono,Cascadia Code,Consolas,monospace;color:var(--text-2)}.fault-sep[data-v-9771f054]{color:var(--text-faint)}.reports-panel[data-v-92fd1d12]{max-width:900px}.section-title[data-v-92fd1d12]{font-size:15px;font-weight:700;color:var(--text-strong);text-transform:uppercase;letter-spacing:.5px;border-left:3px solid var(--accent);padding-left:10px;margin-bottom:16px}.config-card[data-v-92fd1d12]{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:20px;margin-bottom:20px}.config-row[data-v-92fd1d12]{margin-bottom:14px}.config-dates[data-v-92fd1d12]{display:flex;gap:16px}.date-group[data-v-92fd1d12]{flex:1}.config-label[data-v-92fd1d12]{display:block;font-size:12px;font-weight:600;color:var(--text-2);margin-bottom:4px;text-transform:uppercase;letter-spacing:.3px}.config-select[data-v-92fd1d12],.config-input[data-v-92fd1d12]{width:100%;padding:7px 10px;font-size:13px;border:1px solid var(--border-strong);border-radius:4px;background:var(--surface);color:var(--text);transition:border-color .15s}.config-select[data-v-92fd1d12]:focus,.config-input[data-v-92fd1d12]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #c0392b1f}.quick-btns[data-v-92fd1d12]{display:flex;gap:6px;flex-wrap:wrap}.quick-btn[data-v-92fd1d12]{padding:5px 12px;font-size:12px;font-weight:600;border:1px solid var(--border-strong);border-radius:4px;background:var(--surface-2);color:var(--text-2);cursor:pointer;transition:all .15s}.quick-btn[data-v-92fd1d12]:hover{border-color:var(--accent);color:var(--accent);background:var(--surface)}.config-actions[data-v-92fd1d12]{display:flex;gap:10px;margin-top:6px}.btn[data-v-92fd1d12]{padding:8px 20px;font-size:13px;font-weight:700;border:none;border-radius:4px;cursor:pointer;transition:background .15s,opacity .15s}.btn[data-v-92fd1d12]:disabled{opacity:.5;cursor:not-allowed}.btn-primary[data-v-92fd1d12]{background:var(--accent);color:var(--on-accent)}.btn-primary[data-v-92fd1d12]:hover:not(:disabled){background:var(--accent-hover)}.btn-pdf[data-v-92fd1d12]{background:var(--text-strong);color:var(--surface)}.btn-pdf[data-v-92fd1d12]:hover:not(:disabled){background:var(--text-2)}.error-msg[data-v-92fd1d12]{background:var(--danger-bg);color:var(--danger-text);padding:10px 14px;border-radius:4px;font-size:13px;margin-bottom:16px}.empty-state[data-v-92fd1d12]{text-align:center;color:var(--text-faint);padding:40px;font-size:14px;background:var(--surface);border-radius:6px;border:1px solid var(--border)}.kpi-grid[data-v-92fd1d12]{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.kpi-card[data-v-92fd1d12]{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:16px;text-align:center;border-top:3px solid var(--accent)}.kpi-card.kpi-warn[data-v-92fd1d12]{border-top-color:var(--accent);background:var(--danger-bg)}.kpi-value[data-v-92fd1d12]{font-size:24px;font-weight:800;color:var(--text-strong);font-family:SF Mono,Cascadia Code,Consolas,monospace;line-height:1.2}.kpi-label[data-v-92fd1d12]{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;margin-top:4px}.detail-section[data-v-92fd1d12]{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:16px;margin-bottom:16px}.detail-title[data-v-92fd1d12]{font-size:13px;font-weight:700;color:var(--text-strong);margin-bottom:10px}.detail-table[data-v-92fd1d12]{width:100%;border-collapse:collapse;font-size:13px}.detail-table th[data-v-92fd1d12]{background:var(--accent);color:var(--on-accent);padding:6px 10px;text-align:left;font-weight:600;font-size:12px}.detail-table th[data-v-92fd1d12]:not(:first-child){text-align:right}.detail-table td[data-v-92fd1d12]{padding:6px 10px;border-bottom:1px solid var(--divider)}.detail-table td.num[data-v-92fd1d12]{text-align:right;font-family:SF Mono,Cascadia Code,Consolas,monospace}.detail-table tbody tr[data-v-92fd1d12]:nth-child(2n){background:var(--surface-2)}.quality-bars[data-v-92fd1d12]{display:flex;flex-direction:column;gap:8px}.quality-row[data-v-92fd1d12]{display:flex;align-items:center;gap:10px}.q-label[data-v-92fd1d12]{font-size:11px;font-weight:700;width:60px;text-align:right}.q-green[data-v-92fd1d12]{color:#27ae60}.q-yellow[data-v-92fd1d12]{color:#e67e22}.q-red[data-v-92fd1d12]{color:var(--accent)}.q-bar-track[data-v-92fd1d12]{flex:1;height:16px;background:var(--surface-3);border-radius:3px;overflow:hidden}.q-bar[data-v-92fd1d12]{height:100%;border-radius:3px;transition:width .4s ease;min-width:2px}.q-bar-green[data-v-92fd1d12]{background:#27ae60}.q-bar-yellow[data-v-92fd1d12]{background:#e67e22}.q-bar-red[data-v-92fd1d12]{background:var(--accent)}.q-count[data-v-92fd1d12]{font-size:12px;font-weight:600;color:var(--text-2);width:40px;font-family:SF Mono,Cascadia Code,Consolas,monospace}@media(max-width:700px){.kpi-grid[data-v-92fd1d12]{grid-template-columns:repeat(2,1fr)}.config-dates[data-v-92fd1d12]{flex-direction:column}}.prod[data-v-45e951fb]{background:radial-gradient(1200px 400px at 10% -10%,var(--glow-red),transparent 60%),radial-gradient(900px 300px at 100% 0%,var(--glow-blue),transparent 60%),var(--panel);border:1px solid var(--border);color:var(--text);border-radius:12px;padding:22px;box-shadow:var(--panel-shadow)}.prod-head[data-v-45e951fb]{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}.prod-title[data-v-45e951fb]{font-size:22px;font-weight:800;letter-spacing:.2px}.prod-sub[data-v-45e951fb]{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--text-muted);margin-top:2px}.updated[data-v-45e951fb]{display:inline-flex;align-items:center;gap:6px}.updated .dot[data-v-45e951fb]{width:7px;height:7px;border-radius:50%;background:#2ecc71;box-shadow:0 0 6px #2ecc71}.updated .dot.spin[data-v-45e951fb]{background:#f39c12;box-shadow:0 0 6px #f39c12}.head-controls[data-v-45e951fb]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.wire-select[data-v-45e951fb]{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted)}.wire-label[data-v-45e951fb]{font-weight:700}.wire-select select[data-v-45e951fb]{background:var(--glass);color:var(--text);border:1px solid var(--border);border-radius:6px;font-size:12px;padding:5px 6px}.ranges[data-v-45e951fb]{display:flex;background:var(--glass);border:1px solid var(--border);border-radius:8px;padding:3px}.range-btn[data-v-45e951fb]{border:none;background:transparent;color:var(--text-muted);font-size:12px;font-weight:700;padding:6px 14px;border-radius:6px;cursor:pointer;transition:background .15s,color .15s}.range-btn[data-v-45e951fb]:hover{color:var(--text)}.range-btn.active[data-v-45e951fb]{background:var(--accent);color:var(--on-accent);box-shadow:0 2px 10px #e74c3c66}.prod-error[data-v-45e951fb]{background:#e74c3c26;border:1px solid rgba(231,76,60,.4);color:var(--danger-text);padding:10px 14px;border-radius:8px;font-size:13px;margin-bottom:14px}.prod-empty[data-v-45e951fb]{color:var(--text-muted);text-align:center;padding:10px;font-size:13px;margin-bottom:10px}.prod-loading[data-v-45e951fb]{display:flex;justify-content:center;padding:80px 0}.spinner[data-v-45e951fb]{width:34px;height:34px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin-45e951fb .8s linear infinite}@keyframes spin-45e951fb{to{transform:rotate(360deg)}}.card[data-v-45e951fb]{background:linear-gradient(180deg,var(--surface-2),var(--surface));border:1px solid var(--border);border-radius:10px;padding:16px;min-width:0}.card-title[data-v-45e951fb]{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px}.hero[data-v-45e951fb]{display:grid;grid-template-columns:minmax(220px,1fr) minmax(260px,1.3fr) minmax(260px,1.3fr);gap:14px;margin-bottom:14px}.gauge-card[data-v-45e951fb]{display:flex;flex-direction:column;align-items:center;justify-content:center}.gauge[data-v-45e951fb]{width:190px;height:190px}.gauge-track[data-v-45e951fb]{fill:none;stroke:var(--gauge-track);stroke-width:14}.gauge-value[data-v-45e951fb]{fill:none;stroke-width:14;stroke-linecap:round}.gauge-num[data-v-45e951fb]{fill:var(--text);font-size:38px;font-weight:800;text-anchor:middle}.gauge-pct[data-v-45e951fb]{font-size:18px;fill:var(--text-muted)}.gauge-label[data-v-45e951fb]{fill:var(--text-muted);font-size:11px;text-anchor:middle;letter-spacing:.6px;text-transform:uppercase}.gauge-foot[data-v-45e951fb]{font-size:12px;color:var(--text-muted);margin-top:4px}.live-pulse[data-v-45e951fb]{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 #e74c3cb3;animation:pulse-45e951fb 1.6s infinite}@keyframes pulse-45e951fb{0%{box-shadow:0 0 #e74c3cb3}70%{box-shadow:0 0 0 10px #e74c3c00}to{box-shadow:0 0 #e74c3c00}}.live-big[data-v-45e951fb]{display:flex;align-items:baseline;gap:6px}.live-num[data-v-45e951fb]{font-size:54px;font-weight:800;line-height:1;background:linear-gradient(135deg,#f39c12,#e74c3c);-webkit-background-clip:text;background-clip:text;color:transparent}.live-of[data-v-45e951fb]{font-size:22px;color:var(--text-muted);font-weight:700}.live-caption[data-v-45e951fb]{font-size:12px;color:var(--text-muted);margin:4px 0 12px}.live-grid[data-v-45e951fb]{display:flex;flex-wrap:wrap;gap:6px}.live-chip[data-v-45e951fb]{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;padding:3px 9px;border-radius:12px;background:var(--glass);border:1px solid var(--border);color:var(--text-muted)}.chip-dot[data-v-45e951fb]{width:7px;height:7px;border-radius:50%;background:var(--chip-off)}.live-chip.idle .chip-dot[data-v-45e951fb]{background:#2ecc71}.live-chip.idle[data-v-45e951fb]{color:var(--text)}.live-chip.welding[data-v-45e951fb]{color:var(--text-strong);border-color:#e74c3c99;background:#e74c3c26}.live-chip.welding .chip-dot[data-v-45e951fb]{background:#ff6b4a;box-shadow:0 0 8px #ff6b4a;animation:blink-45e951fb .9s infinite alternate}@keyframes blink-45e951fb{0%{opacity:1}to{opacity:.35}}.live-none[data-v-45e951fb]{font-size:12px;color:var(--text-muted)}.dist-bar[data-v-45e951fb]{display:flex;height:16px;border-radius:8px;overflow:hidden;background:var(--glass);margin-bottom:14px}.dist-seg[data-v-45e951fb]{height:100%;transition:width .9s cubic-bezier(.2,.8,.2,1)}.dist-legend[data-v-45e951fb]{display:flex;flex-direction:column;gap:8px}.dist-row[data-v-45e951fb]{display:grid;grid-template-columns:12px 1fr auto 56px;align-items:center;gap:8px;font-size:13px}.dist-name[data-v-45e951fb]{color:var(--text)}.dist-val[data-v-45e951fb]{color:var(--text-muted);font-variant-numeric:tabular-nums}.dist-pct[data-v-45e951fb]{text-align:right;font-weight:700;font-variant-numeric:tabular-nums}.dist-hint[data-v-45e951fb]{font-size:11px;color:var(--text-muted);margin-top:12px}.sw[data-v-45e951fb]{display:inline-block;width:10px;height:10px;border-radius:3px;flex-shrink:0}.kpis[data-v-45e951fb]{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-bottom:14px}.kpi[data-v-45e951fb]{position:relative;overflow:hidden;container-type:inline-size;padding-bottom:44px;transition:transform .15s,border-color .15s}.kpi[data-v-45e951fb]:hover{transform:translateY(-2px);border-color:var(--card-hover)}.kpi-top[data-v-45e951fb]{display:flex;align-items:center;gap:6px;margin-bottom:8px}.kpi-icon[data-v-45e951fb]{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;background:var(--accent-soft);color:var(--accent);font-size:12px}.kpi-label[data-v-45e951fb]{font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.delta[data-v-45e951fb]{display:inline-block;margin-top:6px;font-size:10px;font-weight:700;padding:2px 6px;border-radius:10px;white-space:nowrap}.delta.up[data-v-45e951fb]{background:var(--success-bg);color:var(--success-text)}.delta.down[data-v-45e951fb]{background:var(--danger-bg);color:var(--danger-text)}.kpi-value[data-v-45e951fb]{font-size:clamp(18px,15cqi,28px);font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums;white-space:nowrap}.kpi-unit[data-v-45e951fb]{font-size:clamp(11px,7.5cqi,14px);color:var(--text-muted);margin-left:4px;font-weight:600}.kpi-sub[data-v-45e951fb]{font-size:11px;color:var(--text-muted);margin-top:4px;line-height:1.35}.spark[data-v-45e951fb]{position:absolute;left:0;right:0;bottom:0;width:100%;height:38px}.spark-line[data-v-45e951fb]{fill:none;stroke:#ff6b4a;stroke-width:1.5;vector-effect:non-scaling-stroke}.q-bar[data-v-45e951fb]{position:absolute;left:16px;right:16px;bottom:16px;display:flex;height:8px;border-radius:4px;overflow:hidden;gap:2px}.q.green[data-v-45e951fb]{background:#2ecc71}.q.yellow[data-v-45e951fb]{background:#f1c40f}.q.red[data-v-45e951fb]{background:#e74c3c}.grid2[data-v-45e951fb]{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);gap:14px;margin-bottom:14px}.chart-wrap[data-v-45e951fb]{position:relative;height:320px}.rank-list[data-v-45e951fb]{display:flex;flex-direction:column;gap:12px;max-height:330px;overflow-y:auto;padding-right:4px}.rank-row[data-v-45e951fb]{display:flex;gap:10px;align-items:flex-start}.rank-pos[data-v-45e951fb]{width:24px;height:24px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;background:var(--glass-2);color:var(--text-muted)}.rank-pos.p1[data-v-45e951fb]{background:linear-gradient(135deg,#f7d774,#d4a017);color:#2b2100}.rank-pos.p2[data-v-45e951fb]{background:linear-gradient(135deg,#e3e7ec,#9aa5b1);color:#1d242c}.rank-pos.p3[data-v-45e951fb]{background:linear-gradient(135deg,#e8a87c,#b06a35);color:#2a1404}.rank-main[data-v-45e951fb]{flex:1;min-width:0}.rank-line[data-v-45e951fb]{display:flex;justify-content:space-between;align-items:center;font-size:13px}.rank-name[data-v-45e951fb]{display:inline-flex;align-items:center;gap:6px;font-weight:700}.rank-arc[data-v-45e951fb]{font-weight:700;font-variant-numeric:tabular-nums}.rank-bar[data-v-45e951fb]{height:6px;background:var(--glass-2);border-radius:3px;margin:5px 0;overflow:hidden}.rank-fill[data-v-45e951fb]{height:100%;border-radius:3px;transition:width .9s cubic-bezier(.2,.8,.2,1)}.rank-meta[data-v-45e951fb]{display:flex;gap:12px;font-size:11px;color:var(--text-muted)}.rank-meta b[data-v-45e951fb]{color:var(--text)}.q-good[data-v-45e951fb]{color:var(--success-text)}.q-mid[data-v-45e951fb]{color:var(--quality-mid)}.q-bad[data-v-45e951fb]{color:var(--danger-text)}.heat-legend[data-v-45e951fb]{margin-left:auto;display:inline-flex;align-items:center;gap:6px;text-transform:none;letter-spacing:0;font-weight:600}.heat-scale[data-v-45e951fb]{width:90px;height:8px;border-radius:4px}.heat[data-v-45e951fb]{display:flex;flex-direction:column;gap:4px}.heat-row[data-v-45e951fb]{display:grid;grid-template-columns:80px 1fr;align-items:center;gap:10px}.heat-label[data-v-45e951fb]{font-size:11px;font-weight:700;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.heat-cells[data-v-45e951fb]{display:grid;gap:2px}.heat-cell[data-v-45e951fb]{position:relative;height:18px;border-radius:3px;transition:transform .1s;overflow:hidden}.heat-mark[data-v-45e951fb]{position:absolute;left:0;right:0;bottom:0;height:5px}.heat-lb-legend[data-v-45e951fb]{display:inline-flex;gap:10px;margin-left:16px;text-transform:none;letter-spacing:0;font-weight:600}.heat-lb-item[data-v-45e951fb]{display:inline-flex;align-items:center;gap:4px}.heat-lb-swatch[data-v-45e951fb]{width:10px;height:5px;border-radius:1px}.heat-cell[data-v-45e951fb]:hover{transform:scale(1.35);position:relative;z-index:1;outline:1px solid var(--text-muted)}.heat-ticks[data-v-45e951fb]{position:relative;height:16px}.heat-tick[data-v-45e951fb]{position:absolute;font-size:10px;color:var(--text-muted);white-space:nowrap;top:2px;transform:translate(-50%)}.heat-tick[data-v-45e951fb]:first-child{transform:none}@media(max-width:1100px){.kpis[data-v-45e951fb]{grid-template-columns:repeat(3,minmax(0,1fr))}.hero[data-v-45e951fb]{grid-template-columns:1fr 1fr}.gauge-card[data-v-45e951fb]{grid-column:span 2}.grid2[data-v-45e951fb]{grid-template-columns:1fr}}@media(max-width:640px){.prod[data-v-45e951fb]{padding:14px;border-radius:0;margin:0 -20px}.hero[data-v-45e951fb]{grid-template-columns:1fr}.gauge-card[data-v-45e951fb]{grid-column:auto}.kpis[data-v-45e951fb]{grid-template-columns:repeat(2,minmax(0,1fr))}.heat-row[data-v-45e951fb]{grid-template-columns:56px 1fr}.heat-cells[data-v-45e951fb]{gap:1px}.heat-cell[data-v-45e951fb]{height:14px;border-radius:2px}}.combobox[data-v-9ecd71cc]{position:relative;width:100%}.combobox-input-wrapper[data-v-9ecd71cc]{display:flex;align-items:stretch}.combobox-input-wrapper input[data-v-9ecd71cc]{flex:1;padding:10px 12px;border:1px solid var(--border-strong);border-radius:6px 0 0 6px;font-size:.95rem;box-sizing:border-box;outline:none}.combobox-input-wrapper input[data-v-9ecd71cc]:focus{border-color:var(--system)}.combobox-toggle[data-v-9ecd71cc]{padding:0 10px;border:1px solid var(--border-strong);border-left:none;border-radius:0 6px 6px 0;background:var(--surface-2);cursor:pointer;display:flex;align-items:center}.combobox-toggle[data-v-9ecd71cc]:hover{background:var(--surface-3)}.combobox-arrow[data-v-9ecd71cc]{font-size:.7rem;color:var(--text-muted);transition:transform .15s}.combobox-arrow.open[data-v-9ecd71cc]{transform:rotate(180deg)}.combobox-dropdown[data-v-9ecd71cc]{position:absolute;top:calc(100% + 2px);left:0;right:0;background:var(--surface);border:1px solid var(--border-strong);border-radius:6px;box-shadow:0 4px 12px #0000001a;max-height:240px;overflow-y:auto;z-index:50}.combobox-option[data-v-9ecd71cc]{padding:6px 12px;font-size:.9rem;cursor:pointer;transition:background .1s;display:flex;align-items:center;justify-content:space-between;gap:6px}.combobox-option[data-v-9ecd71cc]:hover,.combobox-option.highlighted[data-v-9ecd71cc]{background:var(--accent-soft)}.combobox-option.system[data-v-9ecd71cc]{color:var(--text-2)}.combobox-option.new-value[data-v-9ecd71cc]{color:var(--system);font-weight:600;font-size:.85rem}.option-text[data-v-9ecd71cc]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.option-actions[data-v-9ecd71cc]{display:none;gap:2px;flex-shrink:0}.combobox-option:hover .option-actions[data-v-9ecd71cc]{display:flex}.action-btn[data-v-9ecd71cc]{width:22px;height:22px;border:none;border-radius:3px;background:transparent;cursor:pointer;font-size:.72rem;display:flex;align-items:center;justify-content:center;color:var(--text-muted);line-height:1}.action-btn[data-v-9ecd71cc]:hover{background:var(--surface-3)}.action-btn.edit[data-v-9ecd71cc]:hover{color:var(--system)}.action-btn.delete[data-v-9ecd71cc]:hover{color:var(--danger-text);background:var(--danger-bg)}.action-btn.save[data-v-9ecd71cc]{color:var(--success-text)}.action-btn.save[data-v-9ecd71cc]:hover{background:var(--success-bg)}.action-btn.cancel[data-v-9ecd71cc]{color:var(--danger-text)}.action-btn.cancel[data-v-9ecd71cc]:hover{background:var(--danger-bg)}.edit-row[data-v-9ecd71cc]{display:flex;align-items:center;gap:4px;width:100%}.edit-input[data-v-9ecd71cc]{flex:1;padding:4px 8px;border:1px solid var(--system);border-radius:4px;font-size:.85rem;outline:none;min-width:0}.lb[data-v-9cf4949d]{background:var(--panel);border:1px solid var(--border);color:var(--text);border-radius:12px;padding:22px;box-shadow:var(--panel-shadow);--c-fault: #e74c3c;--c-maint: #3498db;--c-wear: #f39c12}.lb-head[data-v-9cf4949d]{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}.lb-title[data-v-9cf4949d]{font-size:22px;font-weight:800;letter-spacing:.2px}.lb-sub[data-v-9cf4949d]{font-size:12px;color:var(--text-muted);margin-top:2px}.head-controls[data-v-9cf4949d]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dev-select[data-v-9cf4949d],.form-group select[data-v-9cf4949d],.form-group input[data-v-9cf4949d],.form-group textarea[data-v-9cf4949d]{background:var(--input-bg);color:var(--text);border:1px solid var(--border);border-radius:6px;font-size:13px;padding:7px 8px;font-family:inherit}.ranges[data-v-9cf4949d]{display:flex;background:var(--glass);border:1px solid var(--border);border-radius:8px;padding:3px}.range-btn[data-v-9cf4949d]{border:none;background:transparent;color:var(--text-muted);font-size:12px;font-weight:600;padding:6px 12px;border-radius:6px;cursor:pointer}.range-btn.active[data-v-9cf4949d]{background:var(--accent);color:var(--on-accent)}.lb-error[data-v-9cf4949d]{color:var(--danger-text);background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:6px;padding:8px 12px;font-size:13px;margin:10px 0}.card[data-v-9cf4949d]{background:linear-gradient(180deg,var(--surface-2),var(--surface));border:1px solid var(--border);border-radius:10px;padding:16px;min-width:0}.card-title[data-v-9cf4949d]{font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px}.empty[data-v-9cf4949d]{color:var(--text-faint);font-size:13px;padding:12px 0}.muted[data-v-9cf4949d]{color:var(--text-muted);font-size:11px}.kpis[data-v-9cf4949d]{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:14px}.kpi-label[data-v-9cf4949d]{font-size:11px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--text-muted)}.kpi-value[data-v-9cf4949d]{font-size:26px;font-weight:800;margin:6px 0 2px;font-variant-numeric:tabular-nums}.kpi-sub[data-v-9cf4949d]{font-size:11px;color:var(--text-muted)}.kpi.warn[data-v-9cf4949d]{border-color:var(--c-fault)}.kpi.warn .kpi-sub[data-v-9cf4949d]{color:var(--c-fault);font-weight:700}.plans[data-v-9cf4949d]{margin-bottom:14px}.plan-list[data-v-9cf4949d]{display:flex;flex-direction:column;gap:8px}.plan[data-v-9cf4949d]{display:flex;gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--border);border-left:4px solid var(--success);border-radius:8px;background:var(--surface)}.plan.s-due[data-v-9cf4949d]{border-left-color:var(--c-wear)}.plan.s-overdue[data-v-9cf4949d]{border-left-color:var(--c-fault)}.plan.s-unknown[data-v-9cf4949d]{border-left-color:var(--border-strong)}.plan-main[data-v-9cf4949d]{flex:1;min-width:0}.plan-line[data-v-9cf4949d]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px}.plan-status[data-v-9cf4949d]{margin-left:auto;font-size:11px;font-weight:700;text-transform:uppercase;color:var(--success)}.plan-status.s-due[data-v-9cf4949d]{color:var(--c-wear)}.plan-status.s-overdue[data-v-9cf4949d]{color:var(--c-fault)}.plan-status.s-unknown[data-v-9cf4949d]{color:var(--text-muted)}.plan-bar[data-v-9cf4949d]{position:relative;margin:6px 0 4px;overflow:visible}.plan-warn[data-v-9cf4949d]{position:absolute;top:-2px;bottom:-2px;width:2px;background:var(--text-faint)}.plan-meta[data-v-9cf4949d]{display:flex;gap:14px;flex-wrap:wrap;font-size:11px;color:var(--text-muted)}.plan-meta b[data-v-9cf4949d]{color:var(--text)}.plan-note[data-v-9cf4949d]{font-style:italic}.plan-actions[data-v-9cf4949d]{display:flex;align-items:center;gap:4px;white-space:nowrap}.plan-note-field[data-v-9cf4949d]{margin-top:14px}.btn-sm[data-v-9cf4949d]{padding:5px 12px;font-size:12px}.lb-grid[data-v-9cf4949d]{display:grid;grid-template-columns:minmax(260px,1fr) minmax(340px,1.6fr);gap:14px;margin-bottom:14px}@media(max-width:900px){.lb-grid[data-v-9cf4949d]{grid-template-columns:1fr}}.cause[data-v-9cf4949d]{margin-bottom:10px}.cause-line[data-v-9cf4949d]{display:flex;justify-content:space-between;gap:8px;font-size:13px}.cause-name[data-v-9cf4949d]{font-weight:600}.cause-val[data-v-9cf4949d]{color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.bar[data-v-9cf4949d]{height:6px;background:var(--glass-2);border-radius:3px;margin-top:4px;overflow:hidden}.bar-fill[data-v-9cf4949d]{height:100%;border-radius:3px;background:var(--c-fault);transition:width .6s}.bar-fill.ok[data-v-9cf4949d]{background:var(--success)}.bar-fill.due[data-v-9cf4949d]{background:var(--c-wear)}.bar-fill.over[data-v-9cf4949d]{background:var(--c-fault)}table[data-v-9cf4949d]{width:100%;border-collapse:collapse;font-size:13px}th[data-v-9cf4949d]{text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);padding:6px 8px;border-bottom:1px solid var(--border)}td[data-v-9cf4949d]{padding:8px;border-bottom:1px solid var(--divider);vertical-align:top}.num[data-v-9cf4949d]{text-align:right;font-variant-numeric:tabular-nums}.nowrap[data-v-9cf4949d]{white-space:nowrap}.wear-col[data-v-9cf4949d]{width:130px}.wear-pct[data-v-9cf4949d]{font-size:11px;font-weight:700}.wear-pct.due[data-v-9cf4949d]{color:var(--c-wear)}.wear-pct.over[data-v-9cf4949d]{color:var(--c-fault)}.table-wrap[data-v-9cf4949d]{overflow-x:auto}.desc[data-v-9cf4949d]{max-width:320px;color:var(--text-2);white-space:pre-line}.code[data-v-9cf4949d]{font-family:ui-monospace,monospace;font-size:11px;background:var(--surface-3);border-radius:4px;padding:1px 5px;margin-left:4px}.suggestions[data-v-9cf4949d]{margin-bottom:14px;border-color:var(--c-fault)}.sugg-hint[data-v-9cf4949d]{margin:-6px 0 10px}.sugg[data-v-9cf4949d]{display:flex;align-items:center;gap:12px;padding:8px 10px;border:1px dashed var(--c-fault);border-radius:8px;margin-bottom:6px;background:var(--surface)}.sugg-main[data-v-9cf4949d]{flex:1;min-width:0;font-size:13px}.entries-head[data-v-9cf4949d]{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.type-chips[data-v-9cf4949d]{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.chip[data-v-9cf4949d]{border:1px solid var(--border);background:var(--surface);color:var(--text-2);border-radius:14px;padding:4px 10px;font-size:12px;cursor:pointer}.chip b[data-v-9cf4949d]{margin-left:4px}.chip.active[data-v-9cf4949d]{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.type-badge[data-v-9cf4949d]{display:inline-block;font-size:11px;font-weight:700;padding:2px 8px;border-radius:10px;white-space:nowrap;color:#fff}.type-badge.t-FAULT[data-v-9cf4949d]{background:var(--c-fault)}.type-badge.t-MAINTENANCE[data-v-9cf4949d]{background:var(--c-maint)}.type-badge.t-WEAR_PART[data-v-9cf4949d]{background:var(--c-wear)}.open-badge[data-v-9cf4949d]{font-size:11px;font-weight:700;color:var(--c-fault);margin-right:6px;animation:pulse-9cf4949d 1.6s ease-in-out infinite}@keyframes pulse-9cf4949d{50%{opacity:.45}}.actions[data-v-9cf4949d]{text-align:right}.icon-btn[data-v-9cf4949d]{border:none;background:transparent;cursor:pointer;font-size:14px;color:var(--text-muted);padding:2px 6px;border-radius:4px}.icon-btn[data-v-9cf4949d]:hover{background:var(--hover);color:var(--text)}.icon-btn.danger[data-v-9cf4949d]:hover{color:var(--danger)}.btn[data-v-9cf4949d]{padding:8px 18px;border-radius:6px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);cursor:pointer;font-size:.9rem}.btn[data-v-9cf4949d]:hover{background:var(--hover)}.btn-xs[data-v-9cf4949d]{padding:2px 8px;font-size:11px}.btn-primary[data-v-9cf4949d]{background:var(--system);color:var(--on-accent);border-color:var(--system)}.btn-primary[data-v-9cf4949d]:hover{background:var(--accent-hover)}.btn-primary[data-v-9cf4949d]:disabled{opacity:.5;cursor:not-allowed}.btn-danger[data-v-9cf4949d]{background:var(--danger);color:var(--on-accent);border-color:var(--danger)}.modal-overlay[data-v-9cf4949d]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-9cf4949d]{background:var(--surface);color:var(--text);border-radius:12px;padding:28px;width:520px;max-width:92vw;max-height:88vh;overflow-y:auto}.modal-sm[data-v-9cf4949d]{width:400px}.modal h3[data-v-9cf4949d]{margin:0 0 18px}.modal-actions[data-v-9cf4949d]{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.seg[data-v-9cf4949d]{display:flex;gap:6px;margin-bottom:16px}.seg-btn[data-v-9cf4949d]{flex:1;border:1px solid var(--border);background:var(--surface-2);color:var(--text-2);border-radius:6px;padding:8px;font-size:13px;font-weight:600;cursor:pointer}.seg-btn.active.t-FAULT[data-v-9cf4949d]{background:var(--c-fault);border-color:var(--c-fault);color:#fff}.seg-btn.active.t-MAINTENANCE[data-v-9cf4949d]{background:var(--c-maint);border-color:var(--c-maint);color:#fff}.seg-btn.active.t-WEAR_PART[data-v-9cf4949d]{background:var(--c-wear);border-color:var(--c-wear);color:#fff}.form-group[data-v-9cf4949d]{margin-bottom:14px;flex:1;min-width:0}.form-group label[data-v-9cf4949d]{display:block;font-weight:600;font-size:.75rem;color:var(--text-2);margin-bottom:6px;text-transform:uppercase;letter-spacing:.3px}.form-group select[data-v-9cf4949d],.form-group input[data-v-9cf4949d],.form-group textarea[data-v-9cf4949d]{width:100%;box-sizing:border-box;font-size:14px;padding:9px 10px}.form-row[data-v-9cf4949d]{display:flex;gap:12px;flex-wrap:wrap}.hint[data-v-9cf4949d]{font-size:11px;color:var(--text-muted);margin-top:4px}.check[data-v-9cf4949d]{display:flex;align-items:center;gap:8px;font-size:14px;margin-bottom:14px;cursor:pointer}.check input[data-v-9cf4949d]{width:16px;height:16px;accent-color:var(--system)}.tr[data-v-69929ee2]{background:var(--panel);border:1px solid var(--border);color:var(--text);border-radius:12px;padding:22px;box-shadow:var(--panel-shadow)}.tr-head[data-v-69929ee2]{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}.tr-title[data-v-69929ee2]{font-size:22px;font-weight:800}.tr-sub[data-v-69929ee2]{font-size:12px;color:var(--text-muted);margin-top:2px}.tabs[data-v-69929ee2]{display:flex;background:var(--glass);border:1px solid var(--border);border-radius:8px;padding:3px;flex-wrap:wrap}.tab-btn[data-v-69929ee2]{border:none;background:transparent;color:var(--text-muted);font-size:12px;font-weight:600;padding:6px 12px;border-radius:6px;cursor:pointer}.tab-btn.active[data-v-69929ee2]{background:var(--accent);color:var(--on-accent)}.tr-error[data-v-69929ee2]{color:var(--danger-text);background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:6px;padding:8px 12px;font-size:13px;margin:10px 0}.card[data-v-69929ee2]{background:linear-gradient(180deg,var(--surface-2),var(--surface));border:1px solid var(--border);border-radius:10px;padding:16px;min-width:0;margin-bottom:14px}.card-title[data-v-69929ee2]{font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px}.empty[data-v-69929ee2]{color:var(--text-faint);font-size:13px;padding:12px 0}.empty.small[data-v-69929ee2]{padding:4px 0;font-size:12px}.muted[data-v-69929ee2]{color:var(--text-muted);font-size:11px}.hint[data-v-69929ee2]{font-size:11px;color:var(--text-muted);margin-top:6px}a[data-v-69929ee2]{color:inherit;text-decoration:none;border-bottom:1px dotted var(--text-muted)}a[data-v-69929ee2]:hover{color:var(--accent);border-bottom-color:var(--accent)}select[data-v-69929ee2],input[type=text][data-v-69929ee2],input[type=number][data-v-69929ee2],input[type=datetime-local][data-v-69929ee2]{background:var(--input-bg);color:var(--text);border:1px solid var(--border);border-radius:6px;font-size:14px;padding:8px 10px;font-family:inherit}.scan-form[data-v-69929ee2]{display:flex;gap:8px;flex-wrap:wrap}.scan-form input[data-v-69929ee2]{flex:1;min-width:200px;font-family:ui-monospace,monospace}.scan-result[data-v-69929ee2]{margin-top:10px;font-size:13px;font-weight:600;padding:6px 10px;border-radius:6px}.scan-result.r-ok[data-v-69929ee2]{background:var(--success-bg);color:var(--success-text)}.scan-result.r-unknown[data-v-69929ee2]{background:var(--warning-bg);color:var(--warning-text)}.scan-result.r-rejected[data-v-69929ee2]{background:var(--danger-bg);color:var(--danger-text)}.machines[data-v-69929ee2]{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}.machine[data-v-69929ee2]{margin-bottom:0}.machine.idle[data-v-69929ee2]{opacity:.7}.machine-name[data-v-69929ee2]{font-weight:800;font-size:15px;margin-bottom:10px}.ctx[data-v-69929ee2]{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-top:1px solid var(--divider)}.ctx-main[data-v-69929ee2]{flex:1;min-width:0}.ctx-value[data-v-69929ee2]{font-size:13px;font-weight:600;word-break:break-word}.ctx-actions[data-v-69929ee2]{display:flex;gap:2px}.drum[data-v-69929ee2]{display:flex;align-items:center;gap:8px;margin:4px 0 2px}.drum .bar[data-v-69929ee2]{flex:1}.drum-text[data-v-69929ee2]{font-size:11px;color:var(--text-2);white-space:nowrap}.bar[data-v-69929ee2]{height:6px;background:var(--glass-2);border-radius:3px;overflow:hidden}.bar-fill[data-v-69929ee2]{height:100%;background:var(--success);border-radius:3px}.bar-fill.low[data-v-69929ee2]{background:#e74c3c}.kind-badge[data-v-69929ee2]{display:inline-block;font-size:11px;font-weight:700;padding:2px 8px;border-radius:10px;color:#fff;white-space:nowrap;background:var(--text-muted)}.k-welder[data-v-69929ee2]{background:#8e44ad}.k-operator[data-v-69929ee2]{background:#16a085}.k-wire[data-v-69929ee2]{background:#c0392b}.k-gas[data-v-69929ee2]{background:#2980b9}.k-part[data-v-69929ee2]{background:#2c3e50}.result-head[data-v-69929ee2]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:14px}.related-title[data-v-69929ee2]{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-muted);margin:12px 0 6px;letter-spacing:.5px}.related[data-v-69929ee2]{display:flex;flex-wrap:wrap;gap:6px}.rel-chip[data-v-69929ee2]{display:inline-flex;align-items:center;gap:6px;font-size:12px;border:1px solid var(--border);border-radius:14px;padding:2px 10px 2px 2px;background:var(--surface)}.rel-kind[data-v-69929ee2]{font-size:10px;font-weight:700;color:#fff;padding:2px 6px;border-radius:10px;background:inherit}.rel-chip.k-welder .rel-kind[data-v-69929ee2]{background:#8e44ad}.rel-chip.k-operator .rel-kind[data-v-69929ee2]{background:#16a085}.rel-chip.k-wire .rel-kind[data-v-69929ee2]{background:#c0392b}.rel-chip.k-gas .rel-kind[data-v-69929ee2]{background:#2980b9}.rel-chip.k-part .rel-kind[data-v-69929ee2]{background:#2c3e50}.rel-chip.k-welder[data-v-69929ee2],.rel-chip.k-operator[data-v-69929ee2],.rel-chip.k-wire[data-v-69929ee2],.rel-chip.k-gas[data-v-69929ee2],.rel-chip.k-part[data-v-69929ee2]{background:var(--surface)}table[data-v-69929ee2]{width:100%;border-collapse:collapse;font-size:13px}th[data-v-69929ee2]{text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);padding:6px 8px;border-bottom:1px solid var(--border)}td[data-v-69929ee2]{padding:7px 8px;border-bottom:1px solid var(--divider);vertical-align:top}tr.inactive[data-v-69929ee2]{opacity:.5}.num[data-v-69929ee2]{text-align:right}.nowrap[data-v-69929ee2]{white-space:nowrap}.actions[data-v-69929ee2]{text-align:right}.table-wrap[data-v-69929ee2]{overflow-x:auto}.code-cell[data-v-69929ee2]{font-family:ui-monospace,monospace;font-size:12px;word-break:break-all}.res[data-v-69929ee2]{font-size:11px;font-weight:700;text-transform:uppercase}.res.r-ok[data-v-69929ee2]{color:var(--success)}.res.r-unknown[data-v-69929ee2]{color:var(--warning-text)}.res.r-rejected[data-v-69929ee2]{color:var(--danger)}.entries-head[data-v-69929ee2]{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.check[data-v-69929ee2]{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer;margin-bottom:10px}.check input[data-v-69929ee2]{width:16px;height:16px;accent-color:var(--system)}.builtins td[data-v-69929ee2]:first-child{width:40%}.settings-actions[data-v-69929ee2]{display:flex;justify-content:flex-end;align-items:center;gap:12px}.ok-text[data-v-69929ee2]{color:var(--success);font-size:13px}.icon-btn[data-v-69929ee2]{border:none;background:transparent;cursor:pointer;font-size:14px;color:var(--text-muted);padding:2px 6px;border-radius:4px}.icon-btn[data-v-69929ee2]:hover{background:var(--hover);color:var(--text)}.icon-btn.danger[data-v-69929ee2]:hover{color:var(--danger)}.btn[data-v-69929ee2]{padding:8px 18px;border-radius:6px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);cursor:pointer;font-size:.9rem}.btn[data-v-69929ee2]:hover{background:var(--hover)}.btn[data-v-69929ee2]:disabled{opacity:.5;cursor:not-allowed}.btn-sm[data-v-69929ee2]{padding:5px 12px;font-size:12px}.btn-xs[data-v-69929ee2]{padding:2px 8px;font-size:11px}.btn-primary[data-v-69929ee2]{background:var(--system);color:var(--on-accent);border-color:var(--system)}.btn-primary[data-v-69929ee2]:hover{background:var(--accent-hover)}.btn-danger[data-v-69929ee2]{background:var(--danger);color:var(--on-accent);border-color:var(--danger)}.btn.left[data-v-69929ee2]{margin-right:auto}.modal-overlay[data-v-69929ee2]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-69929ee2]{background:var(--surface);color:var(--text);border-radius:12px;padding:28px;width:520px;max-width:92vw;max-height:88vh;overflow-y:auto}.modal-lg[data-v-69929ee2]{width:820px}.modal h3[data-v-69929ee2]{margin:0 0 18px}.modal-actions[data-v-69929ee2]{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.form-group[data-v-69929ee2]{margin-bottom:14px;flex:1;min-width:0}.form-group label[data-v-69929ee2]{display:block;font-weight:600;font-size:.75rem;color:var(--text-2);margin-bottom:6px;text-transform:uppercase;letter-spacing:.3px}.form-group select[data-v-69929ee2],.form-group input[data-v-69929ee2]{width:100%;box-sizing:border-box}.form-row[data-v-69929ee2]{display:flex;gap:12px;flex-wrap:wrap}.report-head[data-v-69929ee2]{display:flex;justify-content:space-between;gap:12px;margin-bottom:16px}.report-head h3[data-v-69929ee2]{margin:2px 0 4px;font-size:22px}.report-head .btn[data-v-69929ee2]{margin-left:6px}.report-kpis[data-v-69929ee2]{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.rk[data-v-69929ee2]{border:1px solid var(--border);border-radius:8px;padding:10px 12px}.rk-label[data-v-69929ee2]{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-muted)}.rk-value[data-v-69929ee2]{font-size:20px;font-weight:800;margin-top:4px}.qbar[data-v-69929ee2]{display:flex;height:10px;border-radius:5px;overflow:hidden;margin:8px 0 4px;background:var(--glass-2)}.q-g[data-v-69929ee2]{background:var(--success)}.q-y[data-v-69929ee2]{background:#f39c12}.q-r[data-v-69929ee2]{background:#e74c3c}.report-section[data-v-69929ee2]{margin-bottom:16px}@media print{body *{visibility:hidden}.trace-report,.trace-report *{visibility:visible}.trace-report{position:absolute;left:0;top:0;width:100%!important;max-height:none!important;overflow:visible!important;box-shadow:none}.trace-report .no-print{display:none}}.al[data-v-8c929038]{background:var(--panel);border:1px solid var(--border);color:var(--text);border-radius:12px;padding:22px;box-shadow:var(--panel-shadow)}.al-head[data-v-8c929038]{margin-bottom:18px}.al-title[data-v-8c929038]{font-size:22px;font-weight:800}.al-sub[data-v-8c929038]{font-size:12px;color:var(--text-muted);margin-top:2px}.al-error[data-v-8c929038],.al-notice[data-v-8c929038],.al-warn[data-v-8c929038]{border-radius:6px;padding:8px 12px;font-size:13px;margin:0 0 12px;border:1px solid}.al-error[data-v-8c929038]{color:var(--danger-text);background:var(--danger-bg);border-color:var(--danger-border)}.al-notice[data-v-8c929038]{color:var(--success-text);background:var(--success-bg);border-color:transparent}.al-warn[data-v-8c929038]{color:var(--warning-text);background:var(--warning-bg);border-color:var(--warning-border)}.al-grid[data-v-8c929038]{display:grid;grid-template-columns:minmax(320px,1fr) minmax(320px,1fr);gap:14px;align-items:start}@media(max-width:900px){.al-grid[data-v-8c929038]{grid-template-columns:1fr}}.card[data-v-8c929038]{background:linear-gradient(180deg,var(--surface-2),var(--surface));border:1px solid var(--border);border-radius:10px;padding:16px;min-width:0}.card-title[data-v-8c929038]{font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px}.empty[data-v-8c929038]{color:var(--text-faint);font-size:13px;padding:12px 0}.muted[data-v-8c929038]{color:var(--text-muted);font-size:11px}.hint[data-v-8c929038]{font-size:11px;color:var(--text-muted);margin-top:4px}.form-group[data-v-8c929038]{margin-bottom:14px;flex:1;min-width:0}.form-group label[data-v-8c929038]{display:block;font-weight:600;font-size:.75rem;color:var(--text-2);margin-bottom:6px;text-transform:uppercase;letter-spacing:.3px}.form-row[data-v-8c929038]{display:flex;gap:12px}textarea[data-v-8c929038],input[type=number][data-v-8c929038]{background:var(--input-bg);color:var(--text);border:1px solid var(--border);border-radius:6px;font-size:14px;padding:8px 10px;font-family:inherit}textarea[data-v-8c929038]{width:100%;box-sizing:border-box}.form-group input[type=number][data-v-8c929038]{width:120px}.kind-params input[type=number][data-v-8c929038]{width:70px;padding:4px 6px;font-size:13px}.check[data-v-8c929038]{display:flex;align-items:center;gap:8px;font-size:14px;margin-bottom:10px;cursor:pointer}.check input[data-v-8c929038]{width:16px;height:16px;accent-color:var(--system)}.check.big[data-v-8c929038]{font-weight:700;margin-bottom:16px}.kinds[data-v-8c929038]{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.kind[data-v-8c929038]{border:1px solid var(--border);border-radius:8px;padding:10px 12px;background:var(--surface)}.kind.off[data-v-8c929038]{opacity:.6}.kind .check[data-v-8c929038]{margin-bottom:2px}.kind-desc[data-v-8c929038]{font-size:12px;color:var(--text-muted);margin-left:24px}.kind-params[data-v-8c929038]{font-size:12px;color:var(--text-2);margin:6px 0 0 24px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.actions[data-v-8c929038]{display:flex;gap:10px;justify-content:flex-end;margin-top:8px}.btn[data-v-8c929038]{padding:8px 18px;border-radius:6px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);cursor:pointer;font-size:.9rem}.btn[data-v-8c929038]:hover{background:var(--hover)}.btn[data-v-8c929038]:disabled{opacity:.5;cursor:not-allowed}.btn-primary[data-v-8c929038]{background:var(--system);color:var(--on-accent);border-color:var(--system)}.btn-primary[data-v-8c929038]:hover{background:var(--accent-hover)}.ev[data-v-8c929038]{border-left:3px solid var(--border-strong);padding:6px 10px;margin-bottom:8px}.ev.active[data-v-8c929038]{border-left-color:var(--danger);background:var(--danger-bg);border-radius:0 6px 6px 0}.ev-line[data-v-8c929038]{display:flex;align-items:center;gap:8px;font-size:13px;flex-wrap:wrap}.ev-title[data-v-8c929038]{flex:1;min-width:0}.ev-state[data-v-8c929038]{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-muted)}.ev.active .ev-state[data-v-8c929038]{color:var(--danger-text)}.ev-error[data-v-8c929038]{font-size:11px;color:var(--danger-text);margin-top:2px}.kind-badge[data-v-8c929038]{font-size:11px;font-weight:700;padding:2px 8px;border-radius:10px;color:#fff;background:var(--text-muted);white-space:nowrap}.kind-badge.k-maintenance[data-v-8c929038]{background:#3498db}.kind-badge.k-offline[data-v-8c929038]{background:#7f8c8d}.kind-badge.k-quality[data-v-8c929038]{background:#f39c12}.kind-badge.k-fault[data-v-8c929038]{background:#e74c3c}.due-banner[data-v-6c2557d5]{display:flex;align-items:center;gap:12px;padding:10px 14px;margin-bottom:16px;border-radius:8px;background:var(--warning-bg);color:var(--warning-text);border:1px solid var(--warning-border)}.due-banner.overdue[data-v-6c2557d5]{background:var(--danger-bg);color:var(--danger-text);border-color:var(--danger-border)}.due-icon[data-v-6c2557d5]{font-size:18px}.due-text[data-v-6c2557d5]{flex:1;min-width:0;display:flex;flex-wrap:wrap;gap:4px 12px;font-size:13px}.due-list[data-v-6c2557d5]{display:flex;flex-wrap:wrap;gap:4px 12px}.due-item.s-overdue[data-v-6c2557d5]{font-weight:700}.due-btn[data-v-6c2557d5]{border:1px solid currentColor;background:transparent;color:inherit;border-radius:6px;padding:5px 12px;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}.login-page[data-v-2cd08e02]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--hover) 0%,var(--surface-3) 100%);padding:20px}.login-card[data-v-2cd08e02]{background:var(--surface);border-radius:8px;box-shadow:0 4px 24px #0000001a;padding:40px;width:100%;max-width:420px;border-top:3px solid var(--accent)}.login-logo[data-v-2cd08e02]{display:flex;flex-direction:column;align-items:center;gap:2px;margin-bottom:24px}.logo-robo[data-v-2cd08e02]{font-size:26px;font-weight:800;color:var(--text-strong);letter-spacing:-.3px}.logo-sub[data-v-2cd08e02]{font-size:12px;color:var(--text-muted);letter-spacing:.2px}.login-title[data-v-2cd08e02]{font-size:18px;font-weight:700;color:var(--text-strong);text-align:center;margin-bottom:20px}.invite-info[data-v-2cd08e02]{font-size:13px;color:var(--text-2);text-align:center;margin-bottom:16px}.login-form[data-v-2cd08e02]{display:flex;flex-direction:column;gap:14px}.field[data-v-2cd08e02]{display:flex;flex-direction:column;gap:4px}.field label[data-v-2cd08e02]{font-size:12px;font-weight:600;color:var(--text-2);text-transform:uppercase;letter-spacing:.3px}.field input[data-v-2cd08e02]{padding:10px 12px;border:1px solid var(--border-strong);border-radius:4px;font-size:14px;transition:border-color .15s}.field input[data-v-2cd08e02]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #c0392b1a}.field input.disabled[data-v-2cd08e02]{background:var(--hover);color:var(--text-muted)}.field input.input-error[data-v-2cd08e02]{border-color:var(--accent)}.field-error[data-v-2cd08e02]{font-size:11px;color:var(--accent)}.error-msg[data-v-2cd08e02]{background:var(--danger-bg);color:var(--danger-text);padding:8px 12px;border-radius:4px;font-size:13px;text-align:center}.btn-primary[data-v-2cd08e02]{padding:11px 20px;background:var(--accent);color:var(--on-accent);border:none;border-radius:4px;font-size:14px;font-weight:700;cursor:pointer;transition:background .15s;text-transform:uppercase;letter-spacing:.5px}.btn-primary[data-v-2cd08e02]:hover:not(:disabled){background:var(--accent-hover)}.btn-primary[data-v-2cd08e02]:disabled{opacity:.6;cursor:not-allowed}.btn-demo[data-v-2cd08e02]{width:100%;margin-top:10px;padding:9px;border:1px solid var(--border-strong);border-radius:4px;background:transparent;color:var(--text-2);font-size:13px;font-weight:600;cursor:pointer}.btn-demo[data-v-2cd08e02]:hover{border-color:var(--accent);color:var(--accent)}.login-footer[data-v-2cd08e02]{margin-top:24px;text-align:center;font-size:11px;color:var(--text-faint)}.my-account[data-v-3405086d]{max-width:700px;margin:0 auto}.account-header[data-v-3405086d]{display:flex;align-items:center;gap:16px;margin-bottom:16px}.account-title[data-v-3405086d]{font-size:18px;font-weight:700;color:var(--text-strong)}.btn-back[data-v-3405086d]{padding:6px 14px;background:var(--surface-3);border:1px solid var(--border-strong);border-radius:4px;font-size:12px;font-weight:600;cursor:pointer;color:var(--text-2)}.btn-back[data-v-3405086d]:hover{background:var(--surface-3)}.tab-nav[data-v-3405086d]{display:flex;gap:2px;background:var(--surface-3);border-radius:4px;padding:2px;margin-bottom:20px}.tab-btn[data-v-3405086d]{flex:1;padding:8px 12px;font-size:12px;font-weight:700;border:none;border-radius:3px;background:transparent;color:var(--text-muted);cursor:pointer;transition:background .15s,color .15s}.tab-btn[data-v-3405086d]:hover{color:var(--text-2)}.tab-btn.active[data-v-3405086d]{background:var(--surface);color:var(--accent);box-shadow:0 1px 3px #0000001a}.msg[data-v-3405086d]{padding:8px 14px;border-radius:4px;font-size:13px;margin-bottom:16px;text-align:center}.msg.success[data-v-3405086d]{background:var(--success-bg);color:var(--success-text)}.msg.error[data-v-3405086d]{background:var(--danger-bg);color:var(--danger-text)}.tab-content[data-v-3405086d]{background:var(--surface);border-radius:6px;border:1px solid var(--border);padding:24px}.form[data-v-3405086d]{display:flex;flex-direction:column;gap:16px}.form-row[data-v-3405086d]{display:flex;gap:16px}.form-row.two-col .field[data-v-3405086d]{flex:1}.field[data-v-3405086d]{display:flex;flex-direction:column;gap:4px;flex:1}.field label[data-v-3405086d]{font-size:11px;font-weight:700;color:var(--text-2);text-transform:uppercase;letter-spacing:.3px}.field input[data-v-3405086d],.field select[data-v-3405086d]{padding:9px 12px;border:1px solid var(--border-strong);border-radius:4px;font-size:13px}.field input[data-v-3405086d]:focus,.field select[data-v-3405086d]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #c0392b1a}.field input.disabled[data-v-3405086d]{background:var(--hover);color:var(--text-muted)}.btn-primary[data-v-3405086d]{padding:10px 20px;background:var(--accent);color:var(--on-accent);border:none;border-radius:4px;font-size:13px;font-weight:700;cursor:pointer;align-self:flex-start}.btn-primary[data-v-3405086d]:hover:not(:disabled){background:var(--accent-hover)}.btn-primary[data-v-3405086d]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-3405086d]{padding:7px 14px;background:var(--surface-3);border:1px solid var(--border-strong);border-radius:4px;font-size:12px;font-weight:600;cursor:pointer;color:var(--text-2)}.btn-secondary[data-v-3405086d]:hover{background:var(--surface-3)}.upload-area[data-v-3405086d]{display:flex;align-items:center;gap:12px}.preview-img[data-v-3405086d]{width:60px;height:60px;border-radius:50%;object-fit:cover;border:2px solid var(--border-strong)}.empty-state[data-v-3405086d]{padding:20px;text-align:center;color:var(--text-faint);font-size:13px}.activity-item[data-v-3405086d]{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--divider);font-size:13px}.activity-action[data-v-3405086d]{font-weight:600;color:var(--text-strong);min-width:120px}.activity-entity[data-v-3405086d]{flex:1;color:var(--text-2)}.activity-time[data-v-3405086d]{font-size:11px;color:var(--text-muted)}.user-mgmt[data-v-268e4b52]{max-width:900px;margin:0 auto}.mgmt-header[data-v-268e4b52]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.mgmt-title[data-v-268e4b52]{font-size:15px;font-weight:700;color:var(--text-strong);text-transform:uppercase;letter-spacing:.5px;border-left:3px solid var(--accent);padding-left:10px}.btn-invite[data-v-268e4b52]{padding:8px 16px;background:var(--accent);color:var(--on-accent);border:none;border-radius:4px;font-size:13px;font-weight:700;cursor:pointer}.btn-invite[data-v-268e4b52]:hover{background:var(--accent-hover)}.toolbar[data-v-268e4b52]{display:flex;gap:16px;align-items:center;margin-bottom:16px}.search-input[data-v-268e4b52]{flex:1;padding:8px 12px;border:1px solid var(--border-strong);border-radius:4px;font-size:13px}.search-input[data-v-268e4b52]:focus{outline:none;border-color:var(--accent)}.toggle[data-v-268e4b52]{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-2);cursor:pointer;white-space:nowrap}.toggle input[data-v-268e4b52]{accent-color:var(--accent)}.msg[data-v-268e4b52]{padding:8px 14px;border-radius:4px;font-size:13px;margin-bottom:12px;text-align:center}.msg.success[data-v-268e4b52]{background:var(--success-bg);color:var(--success-text)}.msg.error[data-v-268e4b52]{background:var(--danger-bg);color:var(--danger-text)}.user-list[data-v-268e4b52]{background:var(--surface);border-radius:6px;border:1px solid var(--border);overflow:hidden}.empty[data-v-268e4b52]{padding:30px;text-align:center;color:var(--text-faint);font-size:13px}.user-row[data-v-268e4b52]{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--divider);transition:background .1s}.user-row[data-v-268e4b52]:hover{background:var(--surface-2)}.user-row.inactive[data-v-268e4b52]{opacity:.6}.user-avatar[data-v-268e4b52]{width:40px;height:40px;border-radius:50%;overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--surface-3)}.user-avatar img[data-v-268e4b52]{width:100%;height:100%;object-fit:cover}.avatar-initials[data-v-268e4b52]{font-size:14px;font-weight:700;color:var(--text-2)}.user-info[data-v-268e4b52]{flex:1;min-width:0}.user-name[data-v-268e4b52]{font-size:14px;font-weight:600;color:var(--text-strong);display:flex;align-items:center;gap:6px}.user-email[data-v-268e4b52]{font-size:12px;color:var(--text-muted)}.user-meta[data-v-268e4b52]{font-size:11px;color:var(--text-faint)}.badge[data-v-268e4b52]{font-size:10px;font-weight:700;padding:2px 6px;border-radius:3px;text-transform:uppercase;letter-spacing:.3px}.badge.admin[data-v-268e4b52]{background:var(--warning-bg);color:var(--warning-text)}.badge.inactive[data-v-268e4b52]{background:var(--danger-bg);color:var(--danger-text)}.badge.pending[data-v-268e4b52]{background:var(--warning-bg);color:var(--warning-text)}.sub-title[data-v-268e4b52]{font-size:12px;font-weight:700;color:var(--text-2);text-transform:uppercase;letter-spacing:.5px;margin:24px 0 8px}.pending-link[data-v-268e4b52]{margin-bottom:8px}.user-roles[data-v-268e4b52]{display:flex;gap:4px;flex-shrink:0}.role-tag[data-v-268e4b52]{font-size:11px;padding:2px 8px;background:var(--info-bg);color:var(--info-text);border-radius:3px;font-weight:600}.user-actions[data-v-268e4b52]{display:flex;gap:4px;flex-shrink:0}.btn-sm[data-v-268e4b52]{padding:4px 10px;font-size:11px;font-weight:600;border:1px solid var(--border-strong);border-radius:3px;background:var(--surface);color:var(--text-2);cursor:pointer}.btn-sm[data-v-268e4b52]:hover{background:var(--hover)}.btn-sm.danger[data-v-268e4b52]{color:var(--danger-text);border-color:var(--danger-border)}.btn-sm.danger[data-v-268e4b52]:hover{background:var(--danger-bg)}.modal-overlay[data-v-268e4b52]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);display:flex;align-items:center;justify-content:center;z-index:200}.modal[data-v-268e4b52]{background:var(--surface);border-radius:8px;padding:24px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #00000026}.modal h3[data-v-268e4b52]{font-size:16px;font-weight:700;color:var(--text-strong);margin-bottom:16px}.form[data-v-268e4b52]{display:flex;flex-direction:column;gap:12px}.form-row[data-v-268e4b52]{display:flex;gap:12px}.form-row.two-col .field[data-v-268e4b52]{flex:1}.field[data-v-268e4b52]{display:flex;flex-direction:column;gap:4px}.field label[data-v-268e4b52]{font-size:11px;font-weight:700;color:var(--text-2);text-transform:uppercase}.field input[data-v-268e4b52],.field select[data-v-268e4b52]{padding:8px 12px;border:1px solid var(--border-strong);border-radius:4px;font-size:13px}.field input[data-v-268e4b52]:focus,.field select[data-v-268e4b52]:focus{outline:none;border-color:var(--accent)}.role-checkboxes[data-v-268e4b52]{display:flex;flex-wrap:wrap;gap:8px}.role-check[data-v-268e4b52]{display:flex;align-items:center;gap:4px;font-size:13px;cursor:pointer}.role-check input[data-v-268e4b52]{accent-color:var(--accent)}.modal-actions[data-v-268e4b52]{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.btn-primary[data-v-268e4b52]{padding:8px 18px;background:var(--accent);color:var(--on-accent);border:none;border-radius:4px;font-size:13px;font-weight:700;cursor:pointer}.btn-primary[data-v-268e4b52]:hover{background:var(--accent-hover)}.btn-secondary[data-v-268e4b52]{padding:8px 18px;background:var(--surface-3);border:1px solid var(--border-strong);border-radius:4px;font-size:13px;font-weight:600;cursor:pointer;color:var(--text-2)}.btn-secondary[data-v-268e4b52]:hover{background:var(--surface-3)}.invite-result[data-v-268e4b52]{margin-top:8px}.success-text[data-v-268e4b52]{color:var(--success-text);font-size:13px;margin-bottom:6px}.field-hint[data-v-268e4b52]{display:block;font-size:11px;color:var(--text-faint);margin-top:4px}.warning-text[data-v-268e4b52]{color:var(--warning-text);font-size:12px;margin-top:6px}.invite-url input[data-v-268e4b52]{width:100%;padding:8px;font-size:12px;background:var(--hover);border:1px solid var(--border-strong);border-radius:4px;color:var(--text-2)}.super-admin-panel[data-v-5c254d48]{padding:0}.section-header[data-v-5c254d48]{margin-bottom:24px}.section-header h2[data-v-5c254d48]{margin:0;font-size:1.4rem;color:var(--text-strong)}.subtitle[data-v-5c254d48]{color:var(--text-muted);font-size:.9rem;margin-top:4px}.card[data-v-5c254d48]{background:var(--surface);border-radius:10px;padding:24px;box-shadow:0 1px 4px #0000000f;margin-bottom:20px}.card-header[data-v-5c254d48]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.card-header h3[data-v-5c254d48]{margin:0;font-size:1.1rem}.table[data-v-5c254d48]{width:100%;border-collapse:collapse;font-size:.9rem}.table th[data-v-5c254d48]{text-align:left;padding:10px 12px;border-bottom:2px solid var(--divider);color:var(--text-2);font-weight:600;text-transform:uppercase;font-size:.75rem;letter-spacing:.5px}.table td[data-v-5c254d48]{padding:12px;border-bottom:1px solid var(--divider)}.table tbody tr[data-v-5c254d48]:hover{background:var(--surface-2)}.logo-cell[data-v-5c254d48]{width:44px;padding-right:4px!important}.org-logo-thumb[data-v-5c254d48]{width:36px;height:36px;border-radius:6px;object-fit:contain;background:var(--hover);border:1px solid var(--divider)}.org-logo-placeholder[data-v-5c254d48]{width:36px;height:36px;border-radius:6px;background:var(--system);color:var(--on-accent);display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700}.actions[data-v-5c254d48]{display:flex;gap:8px;justify-content:flex-end}.btn-icon[data-v-5c254d48]{background:none;border:1px solid var(--border-strong);border-radius:6px;padding:4px 10px;cursor:pointer;font-size:.9rem}.btn-icon[data-v-5c254d48]:hover{background:var(--surface-3)}.btn-icon.danger[data-v-5c254d48]:hover{background:var(--danger-bg);border-color:var(--danger)}.badge[data-v-5c254d48]{padding:3px 10px;border-radius:12px;font-size:.8rem;font-weight:500}.badge.neutral[data-v-5c254d48]{background:var(--info-bg);color:var(--info-text)}.btn[data-v-5c254d48]{padding:8px 18px;border-radius:6px;border:1px solid var(--border-strong);background:var(--surface);cursor:pointer;font-size:.9rem}.btn[data-v-5c254d48]:hover{background:var(--hover)}.btn-sm[data-v-5c254d48]{padding:4px 10px;font-size:.78rem}.btn-primary[data-v-5c254d48]{background:var(--system);color:var(--on-accent);border-color:var(--system)}.btn-primary[data-v-5c254d48]:hover{background:var(--accent-hover)}.btn-primary[data-v-5c254d48]:disabled{opacity:.5;cursor:not-allowed}.btn-danger[data-v-5c254d48]{background:var(--danger);color:var(--on-accent);border-color:var(--danger)}.btn-danger[data-v-5c254d48]:hover{background:var(--danger)}.modal-overlay[data-v-5c254d48]{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--overlay);display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-5c254d48]{background:var(--surface);border-radius:12px;padding:28px;width:480px;max-width:90vw;max-height:85vh;overflow-y:auto}.modal-lg[data-v-5c254d48]{width:640px}.mail-section[data-v-5c254d48]{border-top:1px solid var(--divider);margin-top:20px;padding-top:16px}.mail-section h4[data-v-5c254d48]{margin:0 0 4px;font-size:.95rem;color:var(--text-strong)}.mail-hint[data-v-5c254d48]{margin:0 0 12px;font-size:.8rem;color:var(--text-muted)}.mail-grid[data-v-5c254d48]{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.mail-grid .mail-host[data-v-5c254d48]{grid-column:1 / -1}.mail-test[data-v-5c254d48]{display:flex;gap:8px;align-items:center}.mail-test input[data-v-5c254d48]{flex:1}.mail-test .btn[data-v-5c254d48]{white-space:nowrap}.mail-ok[data-v-5c254d48]{color:var(--success-text);font-size:.85rem;margin-top:8px}.modal-sm[data-v-5c254d48]{width:380px}.modal h3[data-v-5c254d48]{margin:0 0 18px}.modal-actions[data-v-5c254d48]{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.form-group[data-v-5c254d48]{margin-bottom:14px}.form-group label[data-v-5c254d48]{display:block;font-weight:600;font-size:.8rem;color:var(--text-2);margin-bottom:4px;text-transform:uppercase;letter-spacing:.3px}.form-group input[type=text][data-v-5c254d48],.form-group input[type=email][data-v-5c254d48],.form-group input[type=number][data-v-5c254d48],.form-group input[type=password][data-v-5c254d48],.form-group select[data-v-5c254d48],.mail-test input[data-v-5c254d48]{width:100%;padding:10px 12px;border:1px solid var(--border-strong);border-radius:6px;font-size:.95rem;box-sizing:border-box}.form-group input[data-v-5c254d48]:focus,.form-group select[data-v-5c254d48]:focus,.mail-test input[data-v-5c254d48]:focus{outline:none;border-color:var(--system)}.form-group select[data-v-5c254d48]{background:var(--surface);color:inherit}.upload-row[data-v-5c254d48]{display:flex;gap:20px;margin-bottom:20px}.upload-box[data-v-5c254d48]{flex:1}.upload-box>label[data-v-5c254d48]{display:block;font-weight:600;font-size:.8rem;color:var(--text-2);margin-bottom:6px;text-transform:uppercase;letter-spacing:.3px}.upload-area[data-v-5c254d48]{width:100%;height:140px;border:2px dashed var(--border-strong);border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .2s,background .2s;overflow:hidden;background:var(--surface-2)}.upload-area[data-v-5c254d48]:hover{border-color:var(--system);background:var(--accent-soft)}.upload-preview[data-v-5c254d48]{max-width:100%;max-height:100%;object-fit:contain;padding:8px}.upload-placeholder[data-v-5c254d48]{display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--text-muted);font-size:.85rem}.upload-icon[data-v-5c254d48]{font-size:2rem}.upload-actions[data-v-5c254d48]{display:flex;justify-content:space-between;align-items:center;margin-top:6px}.upload-hint[data-v-5c254d48]{font-size:.72rem;color:var(--text-faint)}.upload-status[data-v-5c254d48]{font-size:.8rem;color:var(--system);margin-top:4px}.error[data-v-5c254d48]{color:var(--danger-text);font-size:.85rem;margin-top:8px;padding:8px;background:var(--danger-bg);border-radius:6px}.loading[data-v-5c254d48]{padding:24px;text-align:center;color:var(--text-muted)}.empty[data-v-5c254d48]{padding:24px;text-align:center;color:var(--text-faint)}.dialog-info[data-v-5c254d48]{color:var(--text-2);margin-bottom:16px}.role-management[data-v-2159e4c9]{padding:0}.section-header[data-v-2159e4c9]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-header h2[data-v-2159e4c9]{margin:0;font-size:1.4rem;color:var(--text-strong)}.role-grid[data-v-2159e4c9]{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px}.role-card[data-v-2159e4c9]{background:var(--surface);border-radius:10px;padding:20px;box-shadow:0 1px 4px #0000000f;border-left:4px solid var(--border-strong)}.role-card.default[data-v-2159e4c9]{border-left-color:var(--system)}.role-header[data-v-2159e4c9]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.role-header h3[data-v-2159e4c9]{margin:0;font-size:1.05rem}.role-badges[data-v-2159e4c9]{display:flex;gap:6px}.badge[data-v-2159e4c9]{padding:2px 8px;border-radius:10px;font-size:.7rem;font-weight:600;text-transform:uppercase}.badge.default[data-v-2159e4c9]{background:var(--system);color:var(--on-accent)}.badge.count[data-v-2159e4c9]{background:var(--info-bg);color:var(--info-text)}.permission-summary[data-v-2159e4c9]{margin-bottom:14px}.perm-line[data-v-2159e4c9]{display:flex;gap:8px;align-items:center;margin-bottom:4px;font-size:.85rem}.resource-name[data-v-2159e4c9]{font-weight:600;color:var(--text-2);min-width:100px}.action-tags[data-v-2159e4c9]{display:flex;gap:4px;flex-wrap:wrap}.action-tag[data-v-2159e4c9]{background:var(--surface-3);padding:1px 7px;border-radius:4px;font-size:.75rem;color:var(--text-2)}.no-perms[data-v-2159e4c9]{color:var(--text-faint);font-size:.85rem;font-style:italic}.role-actions[data-v-2159e4c9]{display:flex;gap:8px}.btn[data-v-2159e4c9]{padding:8px 18px;border-radius:6px;border:1px solid var(--border-strong);background:var(--surface);cursor:pointer;font-size:.9rem}.btn[data-v-2159e4c9]:hover{background:var(--hover)}.btn-sm[data-v-2159e4c9]{padding:5px 12px;font-size:.8rem}.btn-primary[data-v-2159e4c9]{background:var(--system);color:var(--on-accent);border-color:var(--system)}.btn-primary[data-v-2159e4c9]:hover{background:var(--accent-hover)}.btn-primary[data-v-2159e4c9]:disabled{opacity:.5;cursor:not-allowed}.btn-danger[data-v-2159e4c9]{background:var(--danger);color:var(--on-accent);border-color:var(--danger)}.btn-danger[data-v-2159e4c9]:hover{background:var(--danger)}.modal-overlay[data-v-2159e4c9]{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--overlay);display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-2159e4c9]{background:var(--surface);border-radius:12px;padding:28px;width:480px;max-width:90vw;max-height:85vh;overflow-y:auto}.modal-lg[data-v-2159e4c9]{width:640px}.modal-sm[data-v-2159e4c9]{width:380px}.modal h3[data-v-2159e4c9]{margin:0 0 18px}.modal-actions[data-v-2159e4c9]{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.form-group[data-v-2159e4c9]{margin-bottom:16px}.form-group label[data-v-2159e4c9]{display:block;font-weight:600;font-size:.8rem;color:var(--text-2);margin-bottom:6px;text-transform:uppercase;letter-spacing:.3px}.form-group input[type=text][data-v-2159e4c9],.form-group input[type=email][data-v-2159e4c9]{width:100%;padding:10px 12px;border:1px solid var(--border-strong);border-radius:6px;font-size:.95rem;box-sizing:border-box}.form-group input[data-v-2159e4c9]:focus{outline:none;border-color:var(--system)}.permission-matrix[data-v-2159e4c9]{overflow-x:auto}.permission-matrix table[data-v-2159e4c9]{width:100%;border-collapse:collapse}.permission-matrix th[data-v-2159e4c9]{padding:8px 12px;font-size:.75rem;text-transform:uppercase;color:var(--text-muted);border-bottom:2px solid var(--divider);text-align:center}.permission-matrix td[data-v-2159e4c9]{padding:10px 12px;border-bottom:1px solid var(--divider);text-align:center}.permission-matrix .resource-col[data-v-2159e4c9]{text-align:left;min-width:120px}.permission-matrix .action-col[data-v-2159e4c9]{width:70px}.permission-matrix input[type=checkbox][data-v-2159e4c9]{width:18px;height:18px;accent-color:var(--system);cursor:pointer}.no-action[data-v-2159e4c9]{color:var(--text-faint)}.error[data-v-2159e4c9]{color:var(--danger-text);font-size:.85rem;padding:8px;background:var(--danger-bg);border-radius:6px}.loading[data-v-2159e4c9]{padding:40px;text-align:center;color:var(--text-muted)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.5}.loading-screen[data-v-791eb0c9]{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px}.loading-logo[data-v-791eb0c9]{display:flex;align-items:center;gap:10px}.loading-spinner[data-v-791eb0c9]{width:32px;height:32px;border:3px solid var(--border-strong);border-top-color:var(--accent);border-radius:50%;animation:spin-791eb0c9 .8s linear infinite}@keyframes spin-791eb0c9{to{transform:rotate(360deg)}}.app[data-v-791eb0c9]{min-height:100vh;display:flex;flex-direction:column}.header[data-v-791eb0c9]{background:var(--surface);border-bottom:3px solid var(--accent);box-shadow:0 1px 4px #00000014;position:sticky;top:0;z-index:100}.header-inner[data-v-791eb0c9]{max-width:1200px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;justify-content:space-between}.header-left[data-v-791eb0c9]{display:flex;flex-direction:column;align-items:flex-start;line-height:1.15}.logo-group[data-v-791eb0c9]{display:flex;align-items:center;gap:10px}.logo-robo[data-v-791eb0c9]{font-size:20px;font-weight:800;color:var(--text-strong);letter-spacing:-.3px}.subtitle[data-v-791eb0c9]{font-size:11px;color:var(--text-muted);white-space:nowrap;letter-spacing:.2px}.header-right[data-v-791eb0c9]{display:flex;align-items:center;gap:16px}.conn-status[data-v-791eb0c9]{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:4px 12px;border-radius:12px;background:var(--danger-bg);color:var(--danger-text)}.conn-status.ok[data-v-791eb0c9]{background:var(--success-bg);color:var(--success-text)}.conn-dot[data-v-791eb0c9]{width:7px;height:7px;border-radius:50%;background:var(--danger-text)}.conn-status.ok .conn-dot[data-v-791eb0c9]{background:var(--success)}.device-count[data-v-791eb0c9]{font-size:12px;color:var(--text-muted);white-space:nowrap}@media(max-width:1140px){.subtitle[data-v-791eb0c9]{display:none}}.header-nav[data-v-791eb0c9]{display:flex;gap:2px;background:var(--surface-3);border-radius:4px;padding:2px}.nav-btn[data-v-791eb0c9]{padding:5px 12px;white-space:nowrap;font-size:12px;font-weight:700;border:none;border-radius:3px;background:transparent;color:var(--text-muted);cursor:pointer;transition:background .15s,color .15s;letter-spacing:.3px}.nav-btn[data-v-791eb0c9]:hover{color:var(--text-2)}.nav-btn.active[data-v-791eb0c9]{background:var(--surface);color:var(--accent);box-shadow:0 1px 3px #0000001a}.theme-btn[data-v-791eb0c9]{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text-2);cursor:pointer;transition:border-color .15s,color .15s,transform .3s}.theme-btn[data-v-791eb0c9]:hover{border-color:var(--accent);color:var(--accent);transform:rotate(20deg)}.demo-badge[data-v-791eb0c9]{font-size:11px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;padding:4px 10px;border-radius:12px;background:var(--warning-bg);color:var(--warning-text);cursor:help}.dropdown-lang.header-lang[data-v-791eb0c9]{padding:0}.signin-btn[data-v-791eb0c9]{padding:7px 14px;border:none;border-radius:18px;background:var(--accent);color:var(--on-accent);font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}.signin-btn[data-v-791eb0c9]:hover{background:var(--accent-hover)}.user-menu-wrapper[data-v-791eb0c9]{position:relative}.user-btn[data-v-791eb0c9]{display:flex;align-items:center;gap:8px;padding:4px 10px;border:1px solid var(--border);border-radius:20px;background:var(--surface);cursor:pointer;transition:border-color .15s}.user-btn[data-v-791eb0c9]:hover{border-color:var(--accent)}.user-avatar-small[data-v-791eb0c9]{width:28px;height:28px;border-radius:50%;background:var(--accent);color:var(--on-accent);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.user-name-short[data-v-791eb0c9]{font-size:12px;font-weight:600;color:var(--text-strong);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-dropdown[data-v-791eb0c9]{position:absolute;right:0;top:calc(100% + 6px);background:var(--surface);border-radius:6px;box-shadow:0 4px 20px #0000001f;border:1px solid var(--border);width:220px;z-index:150;overflow:hidden}.dropdown-header[data-v-791eb0c9]{padding:12px 14px;border-bottom:1px solid var(--divider);display:flex;flex-direction:column;gap:2px}.dropdown-header strong[data-v-791eb0c9]{font-size:13px;color:var(--text-strong)}.dropdown-header small[data-v-791eb0c9]{font-size:11px;color:var(--text-muted)}.admin-badge[data-v-791eb0c9]{display:inline-block;font-size:10px;font-weight:700;padding:1px 6px;background:var(--warning-bg);color:var(--warning-text);border-radius:3px;margin-top:4px;align-self:flex-start}.admin-badge.super[data-v-791eb0c9]{background:var(--danger-bg);color:var(--danger-text)}.nav-system[data-v-791eb0c9]{border-color:var(--system);color:var(--system)}.nav-system.active[data-v-791eb0c9]{background:var(--system);color:var(--on-accent)}.dropdown-item[data-v-791eb0c9]{display:block;width:100%;padding:10px 14px;border:none;background:none;text-align:left;font-size:13px;color:var(--text);cursor:pointer}.dropdown-item[data-v-791eb0c9]:hover{background:var(--hover)}.dropdown-item.logout[data-v-791eb0c9]{color:var(--accent);font-weight:600}.dropdown-item.logout[data-v-791eb0c9]:hover{background:var(--danger-bg)}.dropdown-divider[data-v-791eb0c9]{height:1px;background:var(--surface-3)}.dropdown-lang[data-v-791eb0c9]{display:flex;gap:4px;padding:8px 14px}.dropdown-lang button[data-v-791eb0c9]{padding:3px 10px;font-size:11px;font-weight:700;border:1px solid var(--border-strong);border-radius:3px;background:var(--surface);color:var(--text-muted);cursor:pointer}.dropdown-lang button.active[data-v-791eb0c9]{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.click-away[data-v-791eb0c9]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99}.main[data-v-791eb0c9]{max-width:1200px;width:100%;margin:0 auto;padding:24px 20px;flex:1}.section[data-v-791eb0c9]{margin-bottom:24px}.section-header[data-v-791eb0c9]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.section-title[data-v-791eb0c9]{font-size:15px;font-weight:700;color:var(--text-strong);text-transform:uppercase;letter-spacing:.5px;border-left:3px solid var(--accent);padding-left:10px}.toggle-hidden[data-v-791eb0c9]{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none}.toggle-hidden input[data-v-791eb0c9]{cursor:pointer;accent-color:var(--accent)}.empty[data-v-791eb0c9]{text-align:center;color:var(--text-faint);padding:40px;font-size:14px;background:var(--surface);border-radius:6px;border:1px solid var(--border)}.footer[data-v-791eb0c9]{max-width:1200px;margin:0 auto;padding:16px 20px;text-align:center;font-size:11px;color:var(--text-faint);border-top:1px solid var(--border-strong)}.fade-enter-active[data-v-791eb0c9],.fade-leave-active[data-v-791eb0c9]{transition:opacity .25s ease}.fade-enter-from[data-v-791eb0c9],.fade-leave-to[data-v-791eb0c9]{opacity:0}:root,:root[data-theme=light]{color-scheme:light;--bg: #f0f2f4;--surface: #ffffff;--surface-2: #f8f9fa;--surface-3: #eceff2;--hover: #f4f5f7;--input-bg: #ffffff;--overlay: rgba(15, 23, 34, .45);--border: #e0e3e7;--border-strong: #d2d6db;--divider: #eef0f2;--text: #333a42;--text-strong: #2c3e50;--text-2: #555d66;--text-muted: #868f99;--text-faint: #aab1b9;--on-accent: #ffffff;--accent: #c0392b;--accent-hover: #a93226;--accent-soft: rgba(192, 57, 43, .1);--system: #8b1a1a;--success: #0e9f6e;--success-bg: #def7ec;--success-text: #03543f;--danger: #dc3545;--danger-bg: #fde8e8;--danger-text: #991b1b;--danger-border: #f5c6c6;--warning-bg: #fef3c7;--warning-text: #92400e;--warning-border: #f3c34a;--info-bg: #eef2ff;--info-text: #3b5bdb;--shadow-sm: 0 1px 3px rgba(15, 23, 34, .08);--shadow-md: 0 4px 20px rgba(15, 23, 34, .12);--chart-grid: rgba(15, 23, 34, .07);--chart-tick: #7d8794;--chart-legend: #555d66;--chart-tooltip-bg: rgba(255, 255, 255, .97);--chart-tooltip-border: #e0e3e7;--chart-tooltip-title: #2c3e50;--chart-tooltip-body: #555d66;--gauge-track: #e6e8eb;--glass: rgba(15, 23, 34, .04);--glass-2: rgba(15, 23, 34, .08);--glow-red: rgba(231, 76, 60, .1);--glow-blue: rgba(52, 152, 219, .08);--panel: #f7f8fa;--panel-shadow: 0 6px 24px rgba(15, 23, 34, .08);--heat-off: rgba(15, 23, 34, .03);--heat-zero: rgba(15, 23, 34, .08);--seg-offline: #c5ccd5;--chip-off: #b8c0ca;--card-hover: #c9d1da;--quality-mid: #b8860b}:root[data-theme=dark]{color-scheme:dark;--bg: #0b121b;--surface: #152030;--surface-2: #1a2738;--surface-3: #213044;--hover: #1d2b3e;--input-bg: #101a27;--overlay: rgba(0, 0, 0, .6);--border: #26364a;--border-strong: #33475f;--divider: #203046;--text: #e3e9f0;--text-strong: #f3f6fa;--text-2: #b6c1ce;--text-muted: #8a97a8;--text-faint: #66758a;--on-accent: #ffffff;--accent: #e74c3c;--accent-hover: #c0392b;--accent-soft: rgba(231, 76, 60, .18);--system: #d0574a;--success: #2ecc71;--success-bg: rgba(46, 204, 113, .15);--success-text: #58e08f;--danger: #e74c3c;--danger-bg: rgba(231, 76, 60, .15);--danger-text: #ff8a75;--danger-border: rgba(231, 76, 60, .4);--warning-bg: rgba(241, 196, 15, .14);--warning-text: #f5c86a;--warning-border: rgba(241, 196, 15, .45);--info-bg: rgba(52, 152, 219, .16);--info-text: #7fb3ff;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .4);--shadow-md: 0 8px 28px rgba(0, 0, 0, .5);--chart-grid: rgba(255, 255, 255, .06);--chart-tick: #7d8a9c;--chart-legend: #aab4c3;--chart-tooltip-bg: #0f1722;--chart-tooltip-border: #2b3a4d;--chart-tooltip-title: #f3f6fa;--chart-tooltip-body: #b6c1ce;--gauge-track: rgba(255, 255, 255, .08);--glass: rgba(255, 255, 255, .05);--glass-2: rgba(255, 255, 255, .08);--glow-red: rgba(231, 76, 60, .18);--glow-blue: rgba(52, 152, 219, .12);--panel: #0f1722;--panel-shadow: 0 10px 30px rgba(0, 0, 0, .35);--heat-off: rgba(255, 255, 255, .03);--heat-zero: rgba(255, 255, 255, .08);--seg-offline: #3d4b5c;--chip-off: #4a5a6e;--card-hover: #35506e;--quality-mid: #f1c40f}input,select,textarea{color:var(--text);background-color:var(--input-bg)}input:disabled,select:disabled,textarea:disabled{color:var(--text-muted);background-color:var(--surface-2)}::placeholder{color:var(--text-faint)}body,.theme-transition *{transition:background-color .25s ease,border-color .25s ease,color .25s ease}
