.login-root[data-v-ce317891]{min-height:100vh}.layout[data-v-ce317891]{display:flex;min-height:100vh}.sidebar[data-v-ce317891]{width:220px;flex-shrink:0;border-right:1px solid var(--border);background:var(--surface);padding:1.25rem 1rem;display:flex;flex-direction:column;gap:1.25rem}.brand[data-v-ce317891]{font-weight:600;font-size:1.05rem;letter-spacing:.02em;color:var(--text)}.nav[data-v-ce317891]{display:flex;flex-direction:column;gap:.35rem;flex:1}.nav-link[data-v-ce317891]{padding:.55rem .75rem;border-radius:var(--radius);color:var(--text);text-decoration:none;font-size:.95rem}.nav-link[data-v-ce317891]:hover{background:#2563eb14;text-decoration:none}.nav-link.router-link-active[data-v-ce317891]{background:#2563eb1f;border:1px solid rgba(37,99,235,.25)}.footer[data-v-ce317891]{margin-top:auto;padding-top:.5rem}.btn-logout[data-v-ce317891]{width:100%;padding:.45rem .65rem;font-size:.88rem;border-radius:var(--radius);border:1px solid var(--border);background:#fff;color:var(--muted);cursor:pointer;font-family:inherit}.btn-logout[data-v-ce317891]:hover{border-color:var(--accent);color:var(--accent)}.main[data-v-ce317891]{flex:1;padding:1.5rem 2rem;max-width:960px;background:var(--bg)}.page-title[data-v-c72140ac]{margin:0 0 .35rem;font-size:1.5rem}.page-desc[data-v-c72140ac]{margin:0 0 1.25rem;color:var(--muted)}.grid[data-v-c72140ac]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.card[data-v-c72140ac]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.25rem}.card-error[data-v-c72140ac]{border-color:#dc262659;background:#fef2f2;color:#991b1b}.card-alert[data-v-c72140ac]{border-color:#f59e0b;background:#fffbeb}.card-label[data-v-c72140ac]{font-size:.85rem;color:var(--muted);margin-bottom:.35rem}.card-value[data-v-c72140ac]{font-size:1.75rem;font-weight:600}.alerts-section[data-v-c72140ac]{margin-top:1.5rem}.alerts-section h3[data-v-c72140ac]{margin:0 0 .75rem;font-size:1rem}.alert-item[data-v-c72140ac]{display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid #e2e8f0;border-radius:6px;margin-bottom:6px;font-size:13px}.alert-item.high[data-v-c72140ac]{border-color:#ef4444;background:#fef2f2}.alert-item.medium[data-v-c72140ac]{border-color:#f59e0b;background:#fffbeb}.severity[data-v-c72140ac]{padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;background:#fee2e2;color:#991b1b}.alert-type[data-v-c72140ac]{font-weight:500}.alert-device[data-v-c72140ac]{color:#64748b}.alert-time[data-v-c72140ac]{color:#94a3b8;font-size:12px;margin-left:auto}.btn-ack[data-v-c72140ac]{padding:3px 10px;border-radius:4px;border:1px solid #d1d5db;background:#fff;cursor:pointer;font-size:12px}.hint[data-v-c72140ac]{margin-top:1.25rem;display:flex;align-items:center;gap:.75rem}.poll-note[data-v-c72140ac]{font-size:.85rem;color:var(--muted)}.btn[data-v-c72140ac]{border-radius:var(--radius);border:1px solid var(--border);padding:.45rem .85rem;font-size:.9rem;background:var(--accent);color:#fff;border-color:transparent}.btn-secondary[data-v-c72140ac]{background:#fff;color:var(--text);border-color:var(--border)}.btn-secondary[data-v-c72140ac]:hover{border-color:var(--muted)}.field[data-v-77a4b821]{display:flex;flex-direction:column;gap:.35rem}label[data-v-77a4b821]{font-size:.85rem;color:var(--muted)}.select[data-v-77a4b821]{padding:.5rem .65rem;border-radius:var(--radius);border:1px solid var(--border);background:#fff;min-width:12rem}.select[data-v-77a4b821]:disabled{opacity:.6;cursor:not-allowed}.page-title[data-v-a088f002]{margin:0 0 .35rem;font-size:1.5rem}.page-desc[data-v-a088f002]{margin:0 0 1.25rem;color:var(--muted)}.inherit-notice[data-v-a088f002]{margin-bottom:1rem;font-size:.9rem;line-height:1.5;background:#eff6ff;border-color:#bfdbfe}.card[data-v-a088f002]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.card-error[data-v-a088f002]{border-color:#dc262659;background:#fef2f2;color:#991b1b}.stack[data-v-a088f002]{display:flex;flex-direction:column;gap:1rem}.section-title[data-v-a088f002]{margin:0 0 .5rem;font-size:1.1rem}.field-row[data-v-a088f002]{display:flex;align-items:center;gap:.75rem}.field-label[data-v-a088f002]{min-width:110px;font-size:.9rem;color:var(--muted)}.field-select[data-v-a088f002],.field-input[data-v-a088f002]{flex:1;padding:.4rem .6rem;border:1px solid var(--border);border-radius:var(--radius);font-size:.9rem;background:#fff}.param-row[data-v-a088f002]{display:flex;align-items:center;gap:.75rem}.slider[data-v-a088f002]{flex:1}.toast[data-v-a088f002]{margin:0 0 .5rem;font-size:.9rem;color:#15803d}.actions[data-v-a088f002]{display:flex;gap:.65rem;margin-top:.5rem}.btn[data-v-a088f002]{border-radius:var(--radius);border:1px solid transparent;padding:.5rem 1rem;font-size:.95rem;background:var(--accent);color:#fff;cursor:pointer}.btn[data-v-a088f002]:disabled{opacity:.55;cursor:not-allowed}.btn-secondary[data-v-a088f002]{background:#fff;color:var(--text);border-color:var(--border)}.btn-secondary[data-v-a088f002]:hover:not(:disabled){border-color:var(--muted)}.btn-sm[data-v-a088f002]{padding:.35rem .75rem;font-size:.85rem;background:var(--accent);color:#fff;border:none;border-radius:var(--radius);cursor:pointer}.scenes-grid[data-v-a088f002]{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:.75rem}.scene-card[data-v-a088f002]{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.scene-card h4[data-v-a088f002]{margin:0;font-size:.95rem}.page-title[data-v-4f7024e6]{margin:0 0 .35rem;font-size:1.5rem}.page-desc[data-v-4f7024e6]{margin:0 0 1.25rem;color:var(--muted)}.card[data-v-4f7024e6]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.card-error[data-v-4f7024e6]{border-color:#dc262659;background:#fef2f2;color:#991b1b}.stack[data-v-4f7024e6]{display:flex;flex-direction:column;gap:.5rem}.lbl[data-v-4f7024e6]{font-size:.85rem;color:var(--muted)}.area[data-v-4f7024e6]{width:100%;resize:vertical;min-height:200px;padding:.75rem .85rem;border-radius:var(--radius);border:1px solid var(--border);background:#fff;line-height:1.5}.area[data-v-4f7024e6]:disabled{opacity:.65}.meta[data-v-4f7024e6]{display:flex;justify-content:flex-end}.count[data-v-4f7024e6]{font-size:.85rem;color:var(--muted)}.count.warn[data-v-4f7024e6]{color:#b91c1c;font-weight:600}.toast[data-v-4f7024e6]{margin:0;font-size:.9rem;color:#15803d}.actions[data-v-4f7024e6]{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:.35rem}.btn[data-v-4f7024e6]{border-radius:var(--radius);border:1px solid transparent;padding:.5rem 1rem;font-size:.95rem;background:var(--accent);color:#fff}.btn[data-v-4f7024e6]:disabled{opacity:.55;cursor:not-allowed}.btn-secondary[data-v-4f7024e6]{background:#fff;color:var(--text);border-color:var(--border)}.btn-secondary[data-v-4f7024e6]:hover:not(:disabled){border-color:var(--muted)}.page-title[data-v-d2488595]{margin:0 0 .35rem;font-size:1.5rem}.page-desc[data-v-d2488595]{margin:0 0 1.25rem;color:var(--muted)}.tabs[data-v-d2488595]{display:flex;gap:0;border-bottom:2px solid var(--border);margin-bottom:1rem;flex-wrap:wrap}.tab[data-v-d2488595]{padding:.6rem 1.1rem;font-size:.92rem;border:none;background:none;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .15s,border-color .15s;cursor:pointer}.tab[data-v-d2488595]:hover{color:var(--text)}.tab.active[data-v-d2488595]{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.card[data-v-d2488595]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.card-error[data-v-d2488595]{border-color:#dc262659;background:#fef2f2;color:#991b1b}.tab-panel[data-v-d2488595]{min-height:200px}.panel-header[data-v-d2488595]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.panel-title[data-v-d2488595]{font-size:1.05rem;font-weight:600;margin-bottom:.75rem}.panel-header .panel-title[data-v-d2488595]{margin-bottom:0}.ping-table[data-v-d2488595]{width:100%;border-collapse:collapse;font-size:.9rem}.ping-table th[data-v-d2488595]{text-align:left;font-size:.8rem;color:var(--muted);padding:.5rem .6rem;border-bottom:1px solid var(--border)}.ping-table td[data-v-d2488595]{padding:.55rem .6rem;border-bottom:1px solid rgba(0,0,0,.04);vertical-align:middle}.badge[data-v-d2488595]{display:inline-block;padding:.15rem .5rem;border-radius:4px;font-size:.78rem;font-weight:600;background:#2563eb14;color:var(--accent)}.dot[data-v-d2488595]{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:.4rem;vertical-align:middle}.dot-idle[data-v-d2488595]{background:#cbd5e1}.dot-loading[data-v-d2488595]{background:#facc15;animation:pulse-d2488595 1s infinite}.dot-ok[data-v-d2488595]{background:#22c55e}.dot-error[data-v-d2488595]{background:#ef4444}@keyframes pulse-d2488595{0%,to{opacity:1}50%{opacity:.4}}.err-text[data-v-d2488595]{font-size:.82rem;color:#991b1b}.field[data-v-d2488595]{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.75rem}.field-row[data-v-d2488595]{display:flex;gap:1rem;margin-bottom:.75rem}.field-row .field[data-v-d2488595]{flex:1;margin-bottom:0}label[data-v-d2488595]{font-size:.85rem;color:var(--muted)}.select[data-v-d2488595]{padding:.5rem .65rem;border-radius:var(--radius);border:1px solid var(--border);background:#fff;min-width:10rem}.area[data-v-d2488595]{width:100%;resize:vertical;padding:.65rem .75rem;border-radius:var(--radius);border:1px solid var(--border);background:#fff;line-height:1.5;font-family:inherit}.input[data-v-d2488595]{flex:1;padding:.5rem .75rem;border-radius:var(--radius);border:1px solid var(--border);background:#fff;font-family:inherit}.actions[data-v-d2488595]{display:flex;gap:.65rem;margin-top:.25rem;margin-bottom:.75rem}.btn[data-v-d2488595]{border-radius:var(--radius);border:1px solid transparent;padding:.5rem 1rem;font-size:.92rem;background:var(--accent);color:#fff;font-family:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem}.btn[data-v-d2488595]:disabled{opacity:.55;cursor:not-allowed}.btn-secondary[data-v-d2488595]{background:#fff;color:var(--text);border-color:var(--border)}.btn-secondary[data-v-d2488595]:hover:not(:disabled){border-color:var(--muted)}.btn-sm[data-v-d2488595]{padding:.35rem .7rem;font-size:.85rem}.btn-record[data-v-d2488595]{background:#dc2626}.btn-record[data-v-d2488595]:hover:not(:disabled){background:#b91c1c}.btn-stop[data-v-d2488595]{background:#6b7280}.btn-stop[data-v-d2488595]:hover:not(:disabled){background:#4b5563}.record-icon[data-v-d2488595]{display:inline-block;width:10px;height:10px;border-radius:50%;background:#fff}.stop-icon[data-v-d2488595]{display:inline-block;width:10px;height:10px;border-radius:2px;background:#fff}.recording-indicator[data-v-d2488595]{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;margin-bottom:.75rem;border-radius:var(--radius);background:#fef2f2;border:1px solid rgba(220,38,38,.2);color:#991b1b;font-size:.9rem}.recording-dot[data-v-d2488595]{display:inline-block;width:8px;height:8px;border-radius:50%;background:#dc2626;animation:pulse-d2488595 1s infinite}.result-error[data-v-d2488595]{margin:.5rem 0;padding:.6rem .85rem;border-radius:var(--radius);background:#fef2f2;border:1px solid rgba(220,38,38,.25);color:#991b1b;font-size:.9rem}.result-box[data-v-d2488595]{margin-top:.75rem;padding:.85rem;border-radius:var(--radius);background:#f8fafc;border:1px solid var(--border)}.result-box.stack[data-v-d2488595]{display:flex;flex-direction:column;gap:.75rem}.result-label[data-v-d2488595]{font-size:.82rem;color:var(--muted);margin-bottom:.25rem}.result-text[data-v-d2488595]{white-space:pre-wrap;line-height:1.55}.latency[data-v-d2488595]{margin-left:.75rem;font-size:.85rem;color:var(--muted)}.latency-grid[data-v-d2488595]{display:flex;gap:1.25rem;font-size:.85rem;color:var(--muted);padding-top:.35rem;border-top:1px solid var(--border)}.hint-text[data-v-d2488595]{font-size:.88rem;color:var(--muted);margin-bottom:.75rem}.pipeline-step[data-v-d2488595]{padding-bottom:.5rem}.pipeline-step+.pipeline-step[data-v-d2488595]{padding-top:.5rem;border-top:1px solid var(--border)}.step-header[data-v-d2488595]{display:flex;align-items:center;gap:.5rem;margin-bottom:.35rem}.step-badge[data-v-d2488595]{display:inline-block;padding:.1rem .45rem;border-radius:4px;font-size:.72rem;font-weight:700;background:#2563eb1a;color:var(--accent);letter-spacing:.02em}.step-badge-llm[data-v-d2488595]{background:#10b9811a;color:#059669}.step-badge-tts[data-v-d2488595]{background:#a855f71a;color:#7c3aed}.step-title[data-v-d2488595]{font-size:.82rem;color:var(--muted)}.prompt-details[data-v-d2488595]{margin-bottom:.75rem;font-size:.88rem;color:var(--muted)}.prompt-details summary[data-v-d2488595]{cursor:pointer;margin-bottom:.35rem}.chat-box[data-v-d2488595]{max-height:360px;overflow-y:auto;padding:.75rem 0;display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.chat-msg[data-v-d2488595]{max-width:80%;padding:.55rem .85rem;border-radius:var(--radius);line-height:1.5;font-size:.92rem}.chat-msg.user[data-v-d2488595]{align-self:flex-end;background:var(--accent);color:#fff}.chat-msg.assistant[data-v-d2488595]{align-self:flex-start;background:#f1f5f9;color:var(--text)}.msg-role[data-v-d2488595]{font-size:.75rem;color:inherit;opacity:.7;margin-bottom:.15rem}.msg-content[data-v-d2488595]{white-space:pre-wrap}.msg-latency[data-v-d2488595]{font-size:.75rem;opacity:.6;text-align:right;margin-top:.2rem}.typing[data-v-d2488595]{opacity:.6}.chat-input[data-v-d2488595]{display:flex;gap:.5rem}audio[data-v-d2488595]{width:100%;max-width:400px}.page-title[data-v-2eaa704e]{font-size:1.35rem;font-weight:600;margin-bottom:.25rem}.page-desc[data-v-2eaa704e]{color:var(--muted);margin-bottom:1.25rem;font-size:.92rem}.filter-bar[data-v-2eaa704e]{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.filter-select[data-v-2eaa704e],.filter-input[data-v-2eaa704e]{padding:.45rem .65rem;border:1px solid var(--border);border-radius:var(--radius);font-size:.9rem;font-family:inherit;background:#fff}.filter-input[data-v-2eaa704e]{flex:1;min-width:160px}.btn[data-v-2eaa704e]{padding:.45rem 1rem;border-radius:var(--radius);font-size:.9rem;font-family:inherit;cursor:pointer;border:1px solid var(--border);background:#fff;color:var(--text)}.btn-primary[data-v-2eaa704e]{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-primary[data-v-2eaa704e]:hover{opacity:.9}.btn-small[data-v-2eaa704e]{padding:.3rem .7rem;font-size:.85rem}.btn[data-v-2eaa704e]:disabled{opacity:.4;cursor:default}.error-banner[data-v-2eaa704e]{background:#fef2f2;color:#b91c1c;padding:.6rem .8rem;border-radius:var(--radius);margin-bottom:1rem;font-size:.9rem}.table-wrap[data-v-2eaa704e]{overflow-x:auto}.log-table[data-v-2eaa704e]{width:100%;border-collapse:collapse;font-size:.88rem}.log-table th[data-v-2eaa704e]{text-align:left;padding:.55rem .6rem;font-weight:500;color:var(--muted);border-bottom:2px solid var(--border);white-space:nowrap}.log-table td[data-v-2eaa704e]{padding:.5rem .6rem;border-bottom:1px solid var(--border);white-space:nowrap}.log-row[data-v-2eaa704e]{cursor:pointer;transition:background .15s}.log-row[data-v-2eaa704e]:hover{background:#2563eb0a}.center-cell[data-v-2eaa704e]{text-align:center;padding:2rem!important;color:var(--muted)}.cell-time[data-v-2eaa704e]{font-variant-numeric:tabular-nums}.cell-chain[data-v-2eaa704e]{max-width:220px;overflow:hidden;text-overflow:ellipsis}.cell-num[data-v-2eaa704e]{font-variant-numeric:tabular-nums;text-align:right}.badge[data-v-2eaa704e]{display:inline-block;padding:.15rem .5rem;border-radius:99px;font-size:.78rem;font-weight:500}.badge-blue[data-v-2eaa704e]{background:#2563eb1a;color:#2563eb}.badge-gray[data-v-2eaa704e]{background:#64748b1a;color:#64748b}.dot[data-v-2eaa704e]{display:inline-block;width:8px;height:8px;border-radius:50%}.dot-ok[data-v-2eaa704e]{background:#22c55e}.dot-err[data-v-2eaa704e]{background:#ef4444}.pagination[data-v-2eaa704e]{display:flex;align-items:center;gap:.75rem;margin-top:.75rem;justify-content:flex-end}.page-info[data-v-2eaa704e]{font-size:.85rem;color:var(--muted);font-variant-numeric:tabular-nums}.drawer-overlay[data-v-2eaa704e]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000040;z-index:1000;display:flex;justify-content:flex-end}.drawer[data-v-2eaa704e]{width:480px;max-width:90vw;background:#fff;height:100%;display:flex;flex-direction:column;box-shadow:-4px 0 24px #0000001f}.drawer-header[data-v-2eaa704e]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.drawer-header h3[data-v-2eaa704e]{font-size:1.05rem;font-weight:600;margin:0}.btn-close[data-v-2eaa704e]{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--muted);line-height:1}.drawer-body[data-v-2eaa704e]{flex:1;overflow-y:auto;padding:1.25rem}.detail-section[data-v-2eaa704e]{margin-bottom:1.25rem}.detail-row[data-v-2eaa704e]{display:flex;gap:.75rem;padding:.3rem 0;font-size:.9rem}.detail-label[data-v-2eaa704e]{width:60px;flex-shrink:0;color:var(--muted);font-size:.85rem}.mono[data-v-2eaa704e]{font-family:SFMono-Regular,Consolas,monospace;font-size:.82rem;word-break:break-all}.section-title[data-v-2eaa704e]{font-size:.9rem;font-weight:600;margin:0 0 .5rem;color:var(--text)}.latency-bars[data-v-2eaa704e]{display:flex;flex-direction:column;gap:.4rem}.lat-bar[data-v-2eaa704e]{display:flex;align-items:center;gap:.5rem}.lat-label[data-v-2eaa704e]{width:36px;font-size:.8rem;color:var(--muted);text-align:right;flex-shrink:0}.lat-track[data-v-2eaa704e]{flex:1;height:12px;background:#f1f5f9;border-radius:6px;overflow:hidden}.lat-fill[data-v-2eaa704e]{height:100%;border-radius:6px;transition:width .3s ease}.lat-asr[data-v-2eaa704e]{background:#38bdf8}.lat-llm[data-v-2eaa704e]{background:#a78bfa}.lat-tts[data-v-2eaa704e]{background:#34d399}.lat-total[data-v-2eaa704e]{background:#64748b}.lat-val[data-v-2eaa704e]{width:60px;font-size:.8rem;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}.token-grid[data-v-2eaa704e]{display:flex;gap:1.5rem}.token-item[data-v-2eaa704e]{display:flex;flex-direction:column;align-items:center}.token-num[data-v-2eaa704e]{font-size:1.2rem;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}.token-label[data-v-2eaa704e]{font-size:.78rem;color:var(--muted)}.detail-pre[data-v-2eaa704e]{background:#f8fafc;border:1px solid var(--border);border-radius:var(--radius);padding:.7rem;font-size:.85rem;white-space:pre-wrap;word-break:break-all;max-height:200px;overflow-y:auto;margin:0;font-family:SFMono-Regular,Consolas,monospace}.error-pre[data-v-2eaa704e]{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.audio-row[data-v-2eaa704e]{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.6rem}.audio-label[data-v-2eaa704e]{font-size:.85rem;color:var(--muted)}.audio-player[data-v-2eaa704e]{width:100%;height:36px}.text-ok[data-v-2eaa704e]{color:#22c55e}.text-err[data-v-2eaa704e]{color:#ef4444}.overlay[data-v-3bf5e6fa]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.dialog[data-v-3bf5e6fa]{background:#fff;border-radius:12px;padding:24px 28px;max-width:560px;width:90%;box-shadow:0 8px 32px #0003}.dialog h3[data-v-3bf5e6fa]{margin:0 0 8px;font-size:18px}.warning[data-v-3bf5e6fa]{color:#b45309;background:#fef3c7;border:1px solid #f59e0b;padding:10px 14px;border-radius:6px;font-size:13px;margin-bottom:16px}.field[data-v-3bf5e6fa]{margin-bottom:14px}.field label[data-v-3bf5e6fa]{font-size:12px;color:#64748b;font-weight:600;text-transform:uppercase;display:block;margin-bottom:4px}.value-row[data-v-3bf5e6fa]{display:flex;align-items:center;gap:8px}.value[data-v-3bf5e6fa]{flex:1;display:block;padding:8px 10px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;word-break:break-all}.value.secret[data-v-3bf5e6fa]{background:#1e293b;color:#22c55e}.actions[data-v-3bf5e6fa]{display:flex;gap:10px;margin-top:18px;justify-content:flex-end}.btn[data-v-3bf5e6fa]{padding:8px 16px;border-radius:6px;border:1px solid #d1d5db;cursor:pointer;font-size:14px;background:#fff}.btn.primary[data-v-3bf5e6fa]{background:#2563eb;color:#fff;border-color:#2563eb}.btn.small[data-v-3bf5e6fa]{padding:4px 10px;font-size:12px}.overlay[data-v-1691ea87]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.dialog[data-v-1691ea87]{background:#fff;border-radius:12px;padding:24px 28px;max-width:400px;width:90%;box-shadow:0 8px 32px #0003}.dialog h3[data-v-1691ea87]{margin:0 0 14px;font-size:16px}.form[data-v-1691ea87]{display:flex;flex-direction:column;gap:12px}.form label[data-v-1691ea87]{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#374151}.input[data-v-1691ea87]{padding:7px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.actions[data-v-1691ea87]{display:flex;gap:10px;margin-top:16px;justify-content:flex-end}.btn[data-v-1691ea87]{padding:8px 16px;border-radius:6px;border:1px solid #d1d5db;cursor:pointer;font-size:14px;background:#fff}.btn.primary[data-v-1691ea87]{background:#2563eb;color:#fff;border-color:#2563eb}.page[data-v-70f7b5ae]{padding:20px}.desc[data-v-70f7b5ae]{color:#64748b;font-size:14px;margin-bottom:16px}.toolbar[data-v-70f7b5ae]{margin-bottom:16px}.btn[data-v-70f7b5ae]{padding:8px 16px;border-radius:6px;border:1px solid #d1d5db;cursor:pointer;font-size:14px;background:#fff}.btn.primary[data-v-70f7b5ae]{background:#2563eb;color:#fff;border-color:#2563eb}.btn.danger[data-v-70f7b5ae]{color:#ef4444;border-color:#ef4444}.btn.small[data-v-70f7b5ae]{padding:4px 10px;font-size:12px}.btn[data-v-70f7b5ae]:disabled{opacity:.5;cursor:not-allowed}.error-msg[data-v-70f7b5ae]{color:#ef4444;font-size:13px;margin-bottom:12px;padding:8px 12px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px}.form-card[data-v-70f7b5ae]{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:16px 20px;margin-bottom:18px}.form-card h3[data-v-70f7b5ae]{margin:0 0 12px;font-size:16px}.form-grid[data-v-70f7b5ae]{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px}.form-grid label[data-v-70f7b5ae]{display:flex;flex-direction:column;gap:3px;font-size:13px;color:#374151}.span2[data-v-70f7b5ae]{grid-column:span 2}.model-config-block[data-v-70f7b5ae]{border-top:1px solid #e2e8f0;padding-top:12px;margin-top:4px}.model-config-block h4[data-v-70f7b5ae]{margin:0 0 6px;font-size:14px}.inherit-badge[data-v-70f7b5ae]{display:inline-block;padding:2px 8px;border-radius:4px;background:#dbeafe;color:#1d4ed8;font-size:12px;margin-right:6px}.inherit-badge.locked[data-v-70f7b5ae]{background:#fef3c7;color:#b45309}.model-config-actions[data-v-70f7b5ae]{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.btn.secondary[data-v-70f7b5ae]{background:#f8fafc}.model-config-grid[data-v-70f7b5ae]{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:10px}.required[data-v-70f7b5ae]{color:#ef4444}.input[data-v-70f7b5ae]{padding:7px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit}.textarea[data-v-70f7b5ae]{resize:vertical}.form-actions[data-v-70f7b5ae]{display:flex;gap:10px;margin-top:14px}.data-table[data-v-70f7b5ae]{width:100%;border-collapse:collapse;font-size:14px}.data-table th[data-v-70f7b5ae],.data-table td[data-v-70f7b5ae]{padding:10px 12px;border-bottom:1px solid #e2e8f0;text-align:left}.data-table th[data-v-70f7b5ae]{background:#f8fafc;font-weight:600;color:#64748b;font-size:12px;text-transform:uppercase}.suspended[data-v-70f7b5ae]{opacity:.5}.badge[data-v-70f7b5ae]{padding:2px 8px;border-radius:10px;font-size:12px;font-weight:500}.badge.green[data-v-70f7b5ae]{background:#dcfce7;color:#166534}.badge.red[data-v-70f7b5ae]{background:#fee2e2;color:#991b1b}.badge.blue[data-v-70f7b5ae]{background:#dbeafe;color:#1e40af}.actions[data-v-70f7b5ae]{white-space:nowrap;display:flex;gap:4px;flex-wrap:wrap}.muted[data-v-70f7b5ae]{color:#64748b;font-size:13px}.audit-panel[data-v-70f7b5ae]{margin-top:18px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:14px}.audit-header[data-v-70f7b5ae]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.audit-header h3[data-v-70f7b5ae]{margin:0;font-size:16px}.panel-container[data-v-d5718aa0]{display:flex;flex-direction:column;gap:16px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;box-shadow:0 1px 3px #00000005}.panel-header[data-v-d5718aa0]{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #f1f5f9;padding-bottom:12px}.panel-header h4[data-v-d5718aa0]{margin:0;font-size:15px;font-weight:700;color:#1e293b}.btn[data-v-d5718aa0]{padding:6px 14px;border-radius:6px;border:1px solid #cbd5e1;cursor:pointer;font-size:13px;font-weight:600;background:#fff;transition:all .15s ease}.btn[data-v-d5718aa0]:hover{background:#f8fafc;border-color:#94a3b8}.btn-small[data-v-d5718aa0]{padding:4px 10px;font-size:12px}.timeline[data-v-d5718aa0]{display:flex;flex-direction:column;gap:16px;max-height:700px;overflow-y:auto;padding:12px;background:#f8fafc;border-radius:10px;border:1px solid #f1f5f9}.timeline-item[data-v-d5718aa0]{display:flex;gap:12px;align-items:flex-start;max-width:85%}.timeline-item.user[data-v-d5718aa0]{align-self:flex-end;flex-direction:row-reverse}.timeline-item.assistant[data-v-d5718aa0]{align-self:flex-start}.avatar[data-v-d5718aa0]{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;box-shadow:0 2px 5px #0000000d}.avatar.user[data-v-d5718aa0]{background:#e0f2fe;border:1px solid #bae6fd}.avatar.assistant[data-v-d5718aa0]{background:#f1f5f9;border:1px solid #e2e8f0}.bubble[data-v-d5718aa0]{padding:12px 16px;border-radius:12px;font-size:14px;box-shadow:0 1px 3px #0000000d;position:relative;max-width:calc(100% - 48px)}.user .bubble[data-v-d5718aa0]{background:#3b82f6;color:#fff;border-top-right-radius:2px}.assistant .bubble[data-v-d5718aa0]{background:#fff;border-top-left-radius:2px;color:#334155;border:1px solid #e2e8f0}.role-header[data-v-d5718aa0]{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;border-bottom:1px dashed rgba(0,0,0,.05);padding-bottom:4px}.user .role-header[data-v-d5718aa0]{border-bottom-color:#ffffff26}.role-name[data-v-d5718aa0]{font-size:11px;font-weight:700;opacity:.8}.user .role-name[data-v-d5718aa0]{color:#eff6ff}.assistant .role-name[data-v-d5718aa0]{color:#64748b}.time[data-v-d5718aa0]{font-size:10px;opacity:.6}.user .time[data-v-d5718aa0]{color:#dbeafe}.assistant .time[data-v-d5718aa0]{color:#94a3b8}.text[data-v-d5718aa0]{line-height:1.5;word-break:break-all;white-space:pre-wrap;font-weight:500}.audio-row[data-v-d5718aa0]{margin-top:8px}.audio-btn[data-v-d5718aa0]{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:16px;border:1px solid #cbd5e1;background:#fff;font-size:12px;cursor:pointer;color:#475569;font-weight:600;transition:all .15s ease;box-shadow:0 1px 2px #00000005}.user .audio-btn[data-v-d5718aa0]{background:#ffffff26;border-color:#ffffff40;color:#fff}.user .audio-btn[data-v-d5718aa0]:hover{background:#ffffff40}.assistant .audio-btn[data-v-d5718aa0]:hover{background:#f8fafc;border-color:#94a3b8}.audio-btn.playing[data-v-d5718aa0]{background:#eff6ff;border-color:#60a5fa;color:#2563eb}.user .audio-btn.playing[data-v-d5718aa0]{background:#fff;color:#2563eb;border-color:#fff}.play-icon[data-v-d5718aa0]{font-size:9px}.empty-card[data-v-d5718aa0]{background:#f8fafc;border:1px dashed #e2e8f0;border-radius:10px;padding:36px;text-align:center}.empty[data-v-d5718aa0]{color:#94a3b8;font-size:13px;margin:0}.panel-container[data-v-d9ab95f7]{display:flex;flex-direction:column;gap:16px}.panel-header[data-v-d9ab95f7]{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #f1f5f9;padding-bottom:12px;margin-bottom:4px}.panel-header h4[data-v-d9ab95f7]{margin:0;font-size:15px;font-weight:700;color:#1e293b}.card[data-v-d9ab95f7]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;box-shadow:0 1px 3px #00000005}.card h5[data-v-d9ab95f7]{margin:0 0 16px;font-size:14px;font-weight:700;color:#1e293b;border-left:3px solid #2563eb;padding-left:8px}.btn[data-v-d9ab95f7]{padding:6px 14px;border-radius:6px;border:1px solid #cbd5e1;cursor:pointer;font-size:13px;font-weight:600;background:#fff;transition:all .15s ease}.btn[data-v-d9ab95f7]:hover{background:#f8fafc;border-color:#94a3b8}.btn-small[data-v-d9ab95f7]{padding:4px 10px;font-size:12px}.radar-container[data-v-d9ab95f7]{display:flex;flex-wrap:wrap;gap:24px;align-items:center}.radar-chart-box[data-v-d9ab95f7]{flex:1.2;min-width:280px;height:280px}.table-wrap[data-v-d9ab95f7]{flex:1;min-width:320px;max-height:280px;overflow-y:auto;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc}.data-table[data-v-d9ab95f7]{width:100%;border-collapse:collapse;font-size:12px}.data-table th[data-v-d9ab95f7],.data-table td[data-v-d9ab95f7]{padding:10px 12px;border-bottom:1px solid #e2e8f0;text-align:left}.data-table th[data-v-d9ab95f7]{font-weight:700;color:#475569;font-size:11px;text-transform:uppercase;background:#f1f5f9;position:sticky;top:0;z-index:10}.topic-td[data-v-d9ab95f7]{font-weight:600;color:#1e293b}.valence-td[data-v-d9ab95f7]{font-weight:700}.valence-td.pos[data-v-d9ab95f7]{color:#16a34a}.valence-td.neg[data-v-d9ab95f7]{color:#dc2626}.sample-count-badge[data-v-d9ab95f7]{background:#e2e8f0;padding:2px 6px;border-radius:10px;font-size:10px;font-weight:700;color:#475569}.negative[data-v-d9ab95f7]{background:#fef2f2}.alert-item[data-v-d9ab95f7]{padding:12px 16px;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:10px;background:#fff;transition:all .15s ease}.alert-item.high[data-v-d9ab95f7]{border-color:#fca5a5;background:#fff5f5;box-shadow:0 2px 8px #ef444408}.alert-item.acked[data-v-d9ab95f7]{opacity:.55;background:#fafafa;border-color:#e2e8f0}.alert-header[data-v-d9ab95f7]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.severity-icon[data-v-d9ab95f7]{font-size:16px;display:inline-flex;align-items:center}.severity[data-v-d9ab95f7]{padding:3px 8px;border-radius:12px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.severity.high[data-v-d9ab95f7]{background:#fee2e2;color:#991b1b}.severity.medium[data-v-d9ab95f7]{background:#fef3c7;color:#92400e}.severity.low[data-v-d9ab95f7]{background:#f1f5f9;color:#475569}.alert-type[data-v-d9ab95f7]{font-weight:700;font-size:13px;color:#1e293b}.alert-time[data-v-d9ab95f7]{color:#94a3b8;font-size:11px;margin-left:auto;font-weight:500}.ack-btn[data-v-d9ab95f7]{border-color:#cbd5e1;font-weight:600;color:#2563eb;background:#fff;border-radius:4px;box-shadow:0 1px 2px #00000005}.ack-btn[data-v-d9ab95f7]:hover{border-color:#2563eb;background:#eff6ff}.alert-payload[data-v-d9ab95f7]{color:#475569;font-size:12px;margin:8px 0 0;word-break:break-all;font-family:monospace;background:#00000005;padding:8px 10px;border-radius:4px;border:1px solid rgba(0,0,0,.04)}.empty[data-v-d9ab95f7]{color:#94a3b8;font-size:13px;margin:0;text-align:center;padding:24px;font-weight:500;background:#f8fafc;border:1px dashed #e2e8f0;border-radius:8px}.panel-container[data-v-82d900c3]{display:flex;flex-direction:column;gap:16px}.panel-header[data-v-82d900c3]{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #f1f5f9;padding-bottom:12px;margin-bottom:4px}.panel-header h4[data-v-82d900c3]{margin:0;font-size:15px;font-weight:700;color:#1e293b}.card[data-v-82d900c3]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;box-shadow:0 1px 3px #00000005}.card-header[data-v-82d900c3]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.card h5[data-v-82d900c3]{margin:0;font-size:14px;font-weight:700;color:#1e293b;border-left:3px solid #2563eb;padding-left:8px}.persona-dashboard[data-v-82d900c3]{display:flex;flex-direction:column;gap:16px;margin-top:14px}.persona-stat[data-v-82d900c3]{display:grid;grid-template-columns:1fr 1fr;gap:16px}.stat-card[data-v-82d900c3]{display:flex;align-items:center;gap:12px;background:#f8fafc;border:1px solid #f1f5f9;padding:12px 16px;border-radius:8px}.stat-card .icon[data-v-82d900c3]{font-size:24px}.stat-info[data-v-82d900c3]{display:flex;flex-direction:column;gap:2px}.stat-info .lbl[data-v-82d900c3]{font-size:11px;color:#64748b;font-weight:600}.stat-info .val[data-v-82d900c3]{font-size:15px;color:#1e293b;font-weight:800}.mood-badge[data-v-82d900c3]{background:#dcfce7;color:#15803d;padding:2px 8px;border-radius:10px;font-size:12px;font-weight:700}.persona-details[data-v-82d900c3]{display:flex;flex-direction:column;gap:12px}.detail-block[data-v-82d900c3]{display:flex;flex-direction:column;gap:6px}.block-title[data-v-82d900c3]{font-size:11px;font-weight:700;color:#475569;letter-spacing:.5px;text-transform:uppercase}.block-content[data-v-82d900c3]{padding:10px 12px;border-radius:6px;font-size:12px;word-break:break-all}.code-style[data-v-82d900c3]{font-family:monospace;background:#0f172a;color:#38bdf8;border:1px solid #1e293b}.diary-block[data-v-82d900c3]{background:#fffbeb;border:1px solid #fef3c7;border-radius:8px;padding:12px 16px}.diary-block .block-title[data-v-82d900c3]{color:#b45309}.diary-text[data-v-82d900c3]{margin:4px 0 0;font-size:13px;line-height:1.6;color:#78350f;font-weight:500;white-space:pre-wrap}.btn[data-v-82d900c3]{padding:6px 14px;border-radius:6px;border:1px solid #cbd5e1;cursor:pointer;font-size:13px;font-weight:600;background:#fff;transition:all .15s ease}.btn[data-v-82d900c3]:hover{background:#f8fafc;border-color:#94a3b8}.btn-small[data-v-82d900c3]{padding:4px 10px;font-size:12px}.btn.danger[data-v-82d900c3]{color:#ef4444;border-color:#fca5a5}.btn.danger[data-v-82d900c3]:hover{background:#fff5f5;border-color:#ef4444}.btn.small[data-v-82d900c3]{padding:4px 8px;font-size:12px;border-radius:4px}.accordion[data-v-82d900c3]{border:1px solid #e2e8f0;border-radius:8px;margin-bottom:10px;overflow:hidden;box-shadow:0 1px 2px #00000003}.accordion-header[data-v-82d900c3]{padding:10px 16px;cursor:pointer;display:flex;align-items:center;gap:10px;background:#f8fafc;transition:all .15s ease}.accordion-header[data-v-82d900c3]:hover{background:#f1f5f9}.accordion-arrow[data-v-82d900c3]{font-size:9px;transition:transform .2s ease;color:#64748b}.accordion-arrow.open[data-v-82d900c3]{transform:rotate(90deg);color:#2563eb}.accordion-body[data-v-82d900c3]{padding:0 16px 12px;background:#fff;border-top:1px solid #f1f5f9}.table-wrap[data-v-82d900c3]{overflow-x:auto;margin-top:12px;border:1px solid #e2e8f0;border-radius:6px}.data-table[data-v-82d900c3]{width:100%;border-collapse:collapse;font-size:12px;min-width:600px}.data-table th[data-v-82d900c3],.data-table td[data-v-82d900c3]{padding:10px 12px;border-bottom:1px solid #e2e8f0;text-align:left}.data-table th[data-v-82d900c3]{font-weight:700;color:#475569;font-size:11px;text-transform:uppercase;background:#f8fafc}.data-table td[data-v-82d900c3]{color:#1e293b;font-weight:500}.attrs[data-v-82d900c3]{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:#64748b;font-family:monospace}.badge[data-v-82d900c3]{padding:3px 8px;border-radius:12px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;display:inline-block}.badge.basic_info[data-v-82d900c3]{background:#e0f2fe;color:#0369a1}.badge.family_member[data-v-82d900c3]{background:#fce7f3;color:#be185d}.badge.like[data-v-82d900c3]{background:#dcfce7;color:#15803d}.badge.dislike[data-v-82d900c3]{background:#fee2e2;color:#b91c1c}.badge.event[data-v-82d900c3]{background:#fef3c7;color:#b45309}.badge.relationship[data-v-82d900c3]{background:#e0e7ff;color:#4338ca}.badge.child_personality[data-v-82d900c3]{background:#f3e8ff;color:#7e22ce}.count[data-v-82d900c3]{color:#94a3b8;font-size:12px;font-weight:700}.empty-type[data-v-82d900c3]{padding:12px 16px;color:#94a3b8;font-size:12px;margin:0;background:#fff;border:1px dashed #e2e8f0;border-radius:8px;text-align:center}.split-page[data-v-cb61332e]{display:flex;height:calc(100vh - 64px);background:#f8fafc;overflow:hidden}.sidebar[data-v-cb61332e]{width:280px;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;background:#fff;flex-shrink:0;box-shadow:1px 0 5px #00000005}.sidebar-header[data-v-cb61332e]{padding:18px 20px;border-bottom:1px solid #f1f5f9}.sidebar-header-row[data-v-cb61332e]{display:flex;justify-content:space-between;align-items:center;gap:8px}.sidebar-header h3[data-v-cb61332e]{margin:0;font-size:15px;font-weight:700;color:#1e293b}.sidebar-header p[data-v-cb61332e]{margin:4px 0 0;font-size:11px}.sidebar-filters[data-v-cb61332e]{padding:12px 20px;display:flex;flex-direction:column;gap:8px;border-bottom:1px solid #f1f5f9;background:#f8fafc}.sidebar-select[data-v-cb61332e]{width:100%;padding:8px 10px;font-size:13px;border:1px solid #cbd5e1;border-radius:6px;background:#fff}.sidebar-input[data-v-cb61332e]{width:100%;padding:8px 10px;font-size:13px;border:1px solid #cbd5e1;border-radius:6px;box-sizing:border-box}.device-list[data-v-cb61332e]{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:8px}.device-card[data-v-cb61332e]{padding:12px;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s ease;background:#fff}.device-card[data-v-cb61332e]:hover{border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 2px 4px #00000005}.device-card.active[data-v-cb61332e]{border-color:#2563eb;background:#f0f6ff;box-shadow:0 4px 12px #2563eb14}.device-card.revoked[data-v-cb61332e]{opacity:.6;background:#fafafa}.card-title[data-v-cb61332e]{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.card-title .sn[data-v-cb61332e]{font-weight:700;color:#1e293b;font-size:13px}.card-detail[data-v-cb61332e]{display:flex;flex-direction:column;gap:2px;font-size:11px;color:#64748b}.workspace[data-v-cb61332e]{flex:1;overflow-y:auto;padding:24px 32px;display:flex;flex-direction:column;background:#f8fafc}.empty-workspace[data-v-cb61332e]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;max-width:500px;margin:0 auto;text-align:center}.empty-icon[data-v-cb61332e]{font-size:56px;animation:bounce-cb61332e 2s infinite}@keyframes bounce-cb61332e{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.empty-workspace h3[data-v-cb61332e]{margin:0;font-size:18px;color:#1e293b;font-weight:700}.empty-workspace p[data-v-cb61332e]{font-size:13px;line-height:1.6}.detail-container[data-v-cb61332e]{display:flex;flex-direction:column;gap:20px;flex:1}.detail-header[data-v-cb61332e]{border-bottom:1px solid #e2e8f0;padding-bottom:16px;display:flex;justify-content:space-between;align-items:flex-end}.detail-header h2[data-v-cb61332e]{margin:0 0 4px;font-size:22px;color:#0f172a;font-weight:800;display:flex;align-items:center;gap:6px}.detail-header h2 code[data-v-cb61332e]{background:#e2e8f0;padding:2px 8px;border-radius:6px;font-size:18px}.header-info[data-v-cb61332e]{font-size:13px;color:#475569;display:flex;align-items:center;gap:8px}.separator[data-v-cb61332e]{color:#cbd5e1}.tabs-nav[data-v-cb61332e]{display:inline-flex;background:#e2e8f0;padding:4px;border-radius:8px;gap:4px;border:none;margin-bottom:4px;align-self:flex-start}.tab-btn[data-v-cb61332e]{padding:6px 16px;border:none;background:none;font-size:13px;font-weight:600;color:#475569;cursor:pointer;border-radius:6px;transition:all .2s ease}.tab-btn[data-v-cb61332e]:hover{color:#1e293b;background:#fff6}.tab-btn.active[data-v-cb61332e]{color:#2563eb;background:#fff;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a}.tabs-body[data-v-cb61332e]{padding:8px 0 20px;flex:1}.info-card[data-v-cb61332e]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;margin-bottom:20px;box-shadow:0 1px 3px #00000005}.info-card h3[data-v-cb61332e]{margin:0 0 6px;font-size:15px;color:#1e293b;font-weight:700}.card-desc[data-v-cb61332e]{font-size:13px;margin:0 0 16px;color:#64748b}.action-buttons[data-v-cb61332e]{display:flex;gap:10px;flex-wrap:wrap}.stats-grid[data-v-cb61332e]{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.stat-item[data-v-cb61332e]{display:flex;flex-direction:column;gap:6px;border:1px solid #f1f5f9;padding:12px 16px;border-radius:8px;background:#f8fafc}.stat-label[data-v-cb61332e]{font-size:11px;color:#64748b;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.stat-val[data-v-cb61332e]{font-size:13px;color:#1e293b;font-weight:700}.btn[data-v-cb61332e]{padding:8px 16px;border-radius:6px;border:1px solid #cbd5e1;cursor:pointer;font-size:13px;font-weight:600;color:#374151;background:#fff;transition:all .15s ease;display:inline-flex;align-items:center;justify-content:center}.btn[data-v-cb61332e]:hover{background:#f8fafc;border-color:#94a3b8}.btn.primary[data-v-cb61332e]{background:#2563eb;color:#fff;border-color:#2563eb}.btn.primary[data-v-cb61332e]:hover{background:#1d4ed8}.btn.danger[data-v-cb61332e]{color:#ef4444;border-color:#fca5a5}.btn.danger[data-v-cb61332e]:hover{background:#fef2f2;border-color:#ef4444}.btn.small[data-v-cb61332e]{padding:5px 10px;font-size:12px;border-radius:4px}.select[data-v-cb61332e]{padding:8px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:13px;background:#fff;outline:none}.select[data-v-cb61332e]:focus{border-color:#2563eb}.input[data-v-cb61332e]{padding:8px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:13px;outline:none}.input[data-v-cb61332e]:focus{border-color:#2563eb}.error-msg[data-v-cb61332e]{color:#ef4444;font-size:13px;margin-bottom:16px;padding:10px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px}.token-result[data-v-cb61332e]{background:#fffbeb;border:1px solid #fef3c7;padding:16px;border-radius:10px;margin-bottom:20px;box-shadow:0 4px 12px #d977060d}.token-code[data-v-cb61332e]{display:block;margin:10px 0;padding:10px 12px;background:#0f172a;color:#4ade80;border-radius:6px;font-size:13px;word-break:break-all;font-family:monospace}.bind-panel[data-v-cb61332e]{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:16px;margin-bottom:20px;box-shadow:0 4px 12px #00000008}.bind-panel h4[data-v-cb61332e]{margin:0 0 10px;font-size:14px;font-weight:700}.bind-actions[data-v-cb61332e]{display:flex;gap:8px;margin-top:12px}.create-panel .form-label[data-v-cb61332e]{display:block;font-size:12px;font-weight:600;color:#475569;margin:10px 0 4px}.create-panel .form-label[data-v-cb61332e]:first-of-type{margin-top:0}.create-panel .form-field[data-v-cb61332e]{width:100%;box-sizing:border-box}.create-panel .required[data-v-cb61332e]{color:#ef4444}.data-table[data-v-cb61332e]{width:100%;border-collapse:collapse;font-size:13px;margin-top:8px}.data-table th[data-v-cb61332e],.data-table td[data-v-cb61332e]{padding:10px 12px;border-bottom:1px solid #e2e8f0;text-align:left}.data-table th[data-v-cb61332e]{background:#f8fafc;font-weight:700;color:#475569;font-size:11px;text-transform:uppercase;letter-spacing:.5px}.badge[data-v-cb61332e]{padding:3px 8px;border-radius:12px;font-size:11px;font-weight:600;display:inline-block}.badge.green[data-v-cb61332e]{background:#dcfce7;color:#15803d}.badge.red[data-v-cb61332e]{background:#fee2e2;color:#b91c1c}.voice-panel[data-v-cb61332e]{margin-top:16px;border:1px solid #e2e8f0;border-radius:8px;padding:16px;background:#fff;box-shadow:0 2px 8px #00000005}.voice-panel h4[data-v-cb61332e]{margin:0 0 12px;font-size:14px;font-weight:700;color:#1e293b}.voice-ref[data-v-cb61332e]{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;color:#475569}.muted[data-v-cb61332e]{color:#64748b;font-size:12px}.center-text[data-v-cb61332e]{text-align:center;margin-top:20px}.page-title[data-v-49c3dc94]{margin:0 0 .35rem;font-size:1.5rem}.page-desc[data-v-49c3dc94]{margin:0 0 1.25rem;color:var(--muted)}.card[data-v-49c3dc94]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;margin-bottom:1rem}.card-error[data-v-49c3dc94]{border-color:#dc262659;background:#fef2f2;color:#991b1b}.actions-top[data-v-49c3dc94]{margin-bottom:1rem}.form-card h3[data-v-49c3dc94]{margin:0 0 .75rem;font-size:1.05rem}.form-grid[data-v-49c3dc94]{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.form-grid label[data-v-49c3dc94]{display:flex;flex-direction:column;gap:.25rem;font-size:.9rem;color:var(--muted)}.field[data-v-49c3dc94]{padding:.4rem .6rem;border:1px solid var(--border);border-radius:var(--radius);font-size:.9rem}.checkbox-label[data-v-49c3dc94]{flex-direction:row!important;align-items:center;gap:.5rem!important}.form-actions[data-v-49c3dc94]{display:flex;gap:.65rem;margin-top:1rem}.btn[data-v-49c3dc94]{border-radius:var(--radius);border:1px solid transparent;padding:.5rem 1rem;font-size:.95rem;background:var(--accent);color:#fff;cursor:pointer}.btn[data-v-49c3dc94]:disabled{opacity:.55}.btn-secondary[data-v-49c3dc94]{background:#fff;color:var(--text);border-color:var(--border)}.data-table[data-v-49c3dc94]{width:100%;border-collapse:collapse;font-size:.9rem}.data-table th[data-v-49c3dc94],.data-table td[data-v-49c3dc94]{padding:.55rem .65rem;text-align:left;border-bottom:1px solid var(--border)}.data-table th[data-v-49c3dc94]{font-weight:600;color:var(--muted);font-size:.85rem}.actions-cell[data-v-49c3dc94]{display:flex;gap:.5rem}.btn-link[data-v-49c3dc94]{background:none;border:none;color:var(--accent);cursor:pointer;font-size:.85rem;padding:0}.btn-link.danger[data-v-49c3dc94]{color:#dc2626}.empty[data-v-49c3dc94]{text-align:center;color:var(--muted);padding:1.5rem}.page-title[data-v-e82633e8]{margin:0 0 .35rem;font-size:1.5rem}.page-desc[data-v-e82633e8]{margin:0 0 1.25rem;color:var(--muted)}.date-bar[data-v-e82633e8]{display:flex;align-items:end;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.date-bar label[data-v-e82633e8]{display:flex;flex-direction:column;gap:.2rem;font-size:.85rem;color:var(--muted)}.date-bar input[data-v-e82633e8]{padding:.35rem .5rem;border:1px solid var(--border);border-radius:var(--radius);font-size:.9rem}.vendor-select[data-v-e82633e8]{padding:.35rem .5rem;border:1px solid var(--border);border-radius:var(--radius);font-size:.9rem;background:#fff}.card[data-v-e82633e8]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;margin-bottom:1rem}.card-error[data-v-e82633e8]{border-color:#dc262659;background:#fef2f2;color:#991b1b}.summary-cards[data-v-e82633e8]{display:flex;gap:1rem;margin-bottom:1rem}.stat-card[data-v-e82633e8]{flex:1;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.25rem;text-align:center}.stat-value[data-v-e82633e8]{font-size:1.5rem;font-weight:700}.stat-label[data-v-e82633e8]{font-size:.85rem;color:var(--muted);margin-top:.2rem}.section-title[data-v-e82633e8]{margin:0 0 .75rem;font-size:1.05rem}.btn[data-v-e82633e8]{border-radius:var(--radius);border:1px solid transparent;padding:.45rem .9rem;font-size:.9rem;background:var(--accent);color:#fff;cursor:pointer}.btn[data-v-e82633e8]:disabled{opacity:.55}.btn-secondary[data-v-e82633e8]{background:#fff;color:var(--text);border-color:var(--border)}.data-table[data-v-e82633e8]{width:100%;border-collapse:collapse;font-size:.88rem}.data-table th[data-v-e82633e8],.data-table td[data-v-e82633e8]{padding:.5rem .6rem;text-align:left;border-bottom:1px solid var(--border)}.data-table th[data-v-e82633e8]{font-weight:600;color:var(--muted);font-size:.82rem}.page[data-v-e1adec48]{max-width:640px}.page-header h1[data-v-e1adec48]{margin:0 0 6px;font-size:1.5rem}.page-header .muted[data-v-e1adec48]{margin:0;font-size:.9rem}.card[data-v-e1adec48]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem 1.5rem;margin-bottom:1.25rem}.card h2[data-v-e1adec48]{margin:0 0 6px;font-size:1.05rem}.card-desc[data-v-e1adec48]{margin:0 0 1rem;font-size:.88rem}.form[data-v-e1adec48]{display:flex;flex-direction:column;gap:.35rem}.label[data-v-e1adec48]{font-size:.82rem;font-weight:600;color:var(--muted);margin-top:.5rem}.label[data-v-e1adec48]:first-of-type{margin-top:0}.input[data-v-e1adec48]{padding:.5rem .65rem;border:1px solid var(--border);border-radius:6px;font-size:.9rem}.btn[data-v-e1adec48]{margin-top:.75rem;align-self:flex-start;padding:.5rem 1rem;border-radius:6px;border:1px solid var(--border);background:#fff;font-size:.9rem;font-weight:600}.btn.primary[data-v-e1adec48]{background:var(--accent);color:#fff;border-color:var(--accent)}.btn[data-v-e1adec48]:disabled{opacity:.6;cursor:not-allowed}.alert[data-v-e1adec48]{padding:.65rem .85rem;border-radius:8px;font-size:.88rem;margin-bottom:1rem}.alert.error[data-v-e1adec48]{background:#fef2f2;color:var(--danger);border:1px solid #fecaca}.alert.success[data-v-e1adec48]{background:#ecfdf5;color:#15803d;border:1px solid #bbf7d0}.data-table[data-v-e1adec48]{width:100%;border-collapse:collapse;font-size:.88rem}.data-table th[data-v-e1adec48],.data-table td[data-v-e1adec48]{padding:.55rem .5rem;border-bottom:1px solid var(--border);text-align:left}.data-table th[data-v-e1adec48]{color:var(--muted);font-weight:600;font-size:.78rem}.badge[data-v-e1adec48]{margin-left:.5rem;padding:2px 8px;border-radius:10px;font-size:.72rem;background:#e2e8f0;color:#475569}.badge.green[data-v-e1adec48]{background:#dcfce7;color:#15803d}.badge.red[data-v-e1adec48]{background:#fee2e2;color:#b91c1c}.muted[data-v-e1adec48]{color:var(--muted)}.login-page[data-v-2f048331]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:linear-gradient(160deg,#f0f7ff,#fafbfc 45%,#eef6ff)}.card[data-v-2f048331]{width:100%;max-width:400px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:2rem 1.75rem;box-shadow:0 12px 40px #0f172a14}.title[data-v-2f048331]{margin:0 0 .35rem;font-size:1.35rem;font-weight:600}.subtitle[data-v-2f048331]{margin:0 0 1.5rem;font-size:.9rem;color:var(--muted)}.form[data-v-2f048331]{display:flex;flex-direction:column;gap:.5rem}.lbl[data-v-2f048331]{font-size:.85rem;color:var(--muted);margin-top:.35rem}.input[data-v-2f048331]{padding:.55rem .75rem;border-radius:var(--radius);border:1px solid var(--border);background:#fff;font-size:1rem}.input[data-v-2f048331]:disabled{opacity:.65}.err[data-v-2f048331]{margin:.25rem 0 0;font-size:.88rem;color:var(--danger)}.btn[data-v-2f048331]{margin-top:1rem;padding:.55rem 1rem;border-radius:var(--radius);border:none;font-size:1rem;cursor:pointer;font-family:inherit}.btn.primary[data-v-2f048331]{background:var(--accent);color:#fff}.btn.primary[data-v-2f048331]:disabled{opacity:.6;cursor:not-allowed}:root{--bg: #f4f6f9;--surface: #ffffff;--border: #e2e8f0;--text: #1e293b;--muted: #64748b;--accent: #2563eb;--accent-hover: #1d4ed8;--danger: #dc2626;--radius: 10px;--font: system-ui, -apple-system, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", sans-serif}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:var(--font);background:var(--bg);color:var(--text)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit;color:var(--text)}
