@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";:root{--bg-primary:#0f1117;--bg-secondary:#161822;--bg-card:#1c1f2e;--bg-input:#232738;--bg-terminal:#0d0f16;--border:#2a2e3d;--border-hover:#3d4260;--text-primary:#e4e6f0;--text-secondary:#8b8fa8;--text-muted:#5c6178;--accent:#6366f1;--accent-hover:#818cf8;--green:#22c55e;--green-bg:#22c55e1f;--red:#ef4444;--red-bg:#ef44441f;--blue:#3b82f6;--blue-bg:#3b82f61f;--purple:#a855f7;--purple-bg:#a855f71f;--orange:#f59e0b;--orange-bg:#f59e0b1f;--teal:#14b8a6;--teal-bg:#14b8a61f;--radius:8px;--radius-sm:6px;--shadow:0 1px 3px #0006, 0 0 0 1px #ffffff08;--shadow-lg:0 4px 24px #00000080}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif;font-size:13px;line-height:1.5}#app{width:100%;height:100vh}button{border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.01em;white-space:nowrap;border:none;outline:none;padding:6px 14px;font-family:Inter,sans-serif;font-size:12.5px;font-weight:500;transition:all .15s}button:disabled{opacity:.35;cursor:not-allowed;pointer-events:none}button:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000004d}button:not(:disabled):active{transform:translateY(0)}.btn-accent{background:var(--accent);color:#fff}.btn-accent:not(:disabled):hover{background:var(--accent-hover)}.btn-green{background:var(--green);color:#111}.btn-green:not(:disabled):hover{background:#16a34a}.btn-red{background:var(--red);color:#fff}.btn-red:not(:disabled):hover{background:#dc2626}.btn-blue{background:var(--blue);color:#fff}.btn-blue:not(:disabled):hover{background:#2563eb}.btn-purple{background:var(--purple);color:#fff}.btn-purple:not(:disabled):hover{background:#9333ea}.btn-teal{background:var(--teal);color:#fff}.btn-teal:not(:disabled):hover{background:#0d9488}.btn-outline{border:1px solid var(--border);color:var(--text-secondary);background:0 0}.btn-outline:not(:disabled):hover{background:var(--bg-input);border-color:var(--border-hover);color:var(--text-primary)}input,select{background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;padding:6px 10px;font-family:Inter,sans-serif;font-size:12.5px;transition:border-color .15s,box-shadow .15s}input::placeholder,select::placeholder{color:var(--text-muted)}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #6366f126}input:disabled,select:disabled{opacity:.35}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px}.card-header{align-items:center;gap:8px;margin-bottom:12px;display:flex}.card-header .icon{font-size:15px}.card-header .title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);font-size:12px;font-weight:600}.section-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:4px;font-size:11px;font-weight:600}.badge{border-radius:20px;align-items:center;gap:5px;padding:3px 10px;font-size:11.5px;font-weight:500;display:inline-flex}.badge-green{background:var(--green-bg);color:var(--green)}.badge-red{background:var(--red-bg);color:var(--red)}.badge-blue{background:var(--blue-bg);color:var(--blue)}.badge-purple{background:var(--purple-bg);color:var(--purple)}.badge-muted{color:var(--text-muted);background:#ffffff0d}.flex-row{align-items:center;gap:8px;display:flex}.flex-col{flex-direction:column;gap:6px;display:flex}.flex-1{flex:1;min-width:0}hr.sep{border:none;border-top:1px solid var(--border);width:100%;margin:10px 0}.overlay[data-v-aa788710]{z-index:1000;background:#000000a6;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal[data-v-aa788710]{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;flex-direction:column;width:100%;max-width:560px;max-height:min(85vh,720px);display:flex;overflow:hidden}.modal-header[data-v-aa788710]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-header h2[data-v-aa788710]{color:var(--text-primary);font-size:16px;font-weight:600}.btn-close[data-v-aa788710]{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;font-size:22px;line-height:1}.btn-close[data-v-aa788710]:hover{color:var(--text-primary);background:var(--bg-input)}.modal-body[data-v-aa788710]{color:var(--text-secondary);flex:1;padding:16px 20px;font-size:13px;line-height:1.75;overflow-y:auto}.modal-body h3[data-v-aa788710]{color:var(--text-primary);margin:18px 0 8px;font-size:14px;font-weight:600}.modal-body p[data-v-aa788710]{margin:0 0 10px}.modal-body ul[data-v-aa788710]{margin:0 0 10px;padding-left:1.4em}.modal-body li[data-v-aa788710]{margin-bottom:6px}.modal-body strong[data-v-aa788710]{color:var(--text-primary)}.updated[data-v-aa788710]{color:var(--text-muted);font-size:12px;margin-bottom:14px!important}.footer-note[data-v-aa788710]{border-top:1px solid var(--border);color:var(--text-muted);padding-top:12px;font-size:12px;margin-top:16px!important}.modal-footer[data-v-aa788710]{border-top:1px solid var(--border);justify-content:flex-end;padding:14px 20px;display:flex}.btn-primary[data-v-aa788710]{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 20px;font-size:13px;font-weight:600}.btn-primary[data-v-aa788710]:hover{background:var(--accent-hover)}.login-page[data-v-977e736f]{background:var(--bg-primary);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-box[data-v-977e736f]{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;width:100%;max-width:360px;padding:40px 32px}.title[data-v-977e736f]{text-align:center;color:var(--text-primary);letter-spacing:.05em;font-size:22px;font-weight:600}.subtitle[data-v-977e736f]{text-align:center;color:var(--text-muted);margin:8px 0 28px;font-size:13px}form[data-v-977e736f]{flex-direction:column;gap:14px;display:flex}.field-select[data-v-977e736f],input[type=text][data-v-977e736f],input[type=password][data-v-977e736f]{background:var(--bg-input);border:1px solid var(--border);width:100%;color:var(--text-primary);border-radius:6px;padding:11px 14px;font-size:14px}.field-select[data-v-977e736f]{cursor:pointer}.field-select[data-v-977e736f]:focus,input[type=text][data-v-977e736f]:focus,input[type=password][data-v-977e736f]:focus{border-color:var(--accent);outline:none}input[type=text][data-v-977e736f]::placeholder,input[type=password][data-v-977e736f]::placeholder{color:var(--text-muted)}.remember-check[data-v-977e736f]{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:13px;display:flex}.remember-check input[type=checkbox][data-v-977e736f]{accent-color:var(--accent);cursor:pointer}.error[data-v-977e736f]{color:var(--red);margin:-4px 0 0;font-size:13px}button[type=submit][data-v-977e736f]{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;margin-top:4px;padding:11px;font-size:14px;font-weight:600}button[type=submit][data-v-977e736f]:hover:not(:disabled){background:var(--accent-hover)}button[type=submit][data-v-977e736f]:disabled{opacity:.65;cursor:not-allowed}.agreement[data-v-977e736f]{border-top:1px solid var(--border);margin-top:20px;padding-top:16px}.agreement-check[data-v-977e736f]{color:var(--text-secondary);cursor:pointer;align-items:flex-start;gap:8px;font-size:12px;line-height:1.5;display:flex}.agreement-check input[type=checkbox][data-v-977e736f]{accent-color:var(--accent);cursor:pointer;flex-shrink:0;margin-top:3px}.agreement-link[data-v-977e736f]{color:var(--accent);font-size:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-weight:500;text-decoration:underline}.agreement-link[data-v-977e736f]:hover{color:var(--accent-hover)}.agreement-tip[data-v-977e736f]{color:var(--text-muted);margin:10px 0 0;font-size:11px;line-height:1.55}.bind-page[data-v-af4639ed]{background:var(--bg-primary);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.bind-box[data-v-af4639ed]{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;width:100%;max-width:420px;padding:40px 32px}.title[data-v-af4639ed]{text-align:center;color:var(--text-primary);font-size:22px;font-weight:600}.subtitle[data-v-af4639ed]{text-align:center;color:var(--text-muted);margin:8px 0 24px;font-size:13px;line-height:1.5}.field-row[data-v-af4639ed]{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.field-label[data-v-af4639ed]{color:var(--text-muted);font-size:12px}.btn-refresh[data-v-af4639ed]{color:var(--accent-hover);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:4px;padding:2px 8px;font-size:11px}.btn-refresh[data-v-af4639ed]:hover:not(:disabled){border-color:var(--accent)}.btn-refresh[data-v-af4639ed]:disabled{opacity:.6;cursor:not-allowed}.info-card[data-v-af4639ed]{background:var(--bg-input);border:1px solid var(--border);border-radius:6px;margin:4px 0 16px;padding:14px 16px}.info-label[data-v-af4639ed]{color:var(--text-muted);margin-bottom:6px;font-size:12px;display:block}.info-value[data-v-af4639ed]{font-family:var(--font-mono,monospace);color:var(--accent-hover);word-break:break-all;font-size:14px;display:block}.info-meta[data-v-af4639ed]{color:var(--text-muted);margin-top:6px;font-size:12px;display:block}.hint[data-v-af4639ed]{color:var(--text-muted);margin:6px 0 12px;font-size:11px;line-height:1.4}.hint.warn[data-v-af4639ed]{color:var(--yellow,#eab308)}.form-area[data-v-af4639ed]{flex-direction:column;gap:0;display:flex}select[data-v-af4639ed],input[data-v-af4639ed]{background:var(--bg-input);border:1px solid var(--border);width:100%;color:var(--text-primary);border-radius:6px;margin-bottom:14px;padding:11px 14px;font-size:14px}input[data-v-af4639ed]{text-transform:uppercase}select[data-v-af4639ed]:focus,input[data-v-af4639ed]:focus{border-color:var(--accent);outline:none}.error[data-v-af4639ed]{color:var(--red);margin:0 0 12px;font-size:13px}button[type=button][data-v-af4639ed]:not(.btn-logout):not(.btn-refresh){background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:11px;font-size:14px;font-weight:600}button[type=button][data-v-af4639ed]:not(.btn-logout):not(.btn-refresh):hover:not(:disabled){background:var(--accent-hover)}button[data-v-af4639ed]:disabled{opacity:.65;cursor:not-allowed}.btn-logout[data-v-af4639ed]{border:1px solid var(--border);width:100%;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:6px;margin-top:20px;padding:9px;font-size:13px;display:block}.btn-logout[data-v-af4639ed]:hover{color:var(--text-primary);border-color:var(--border-hover)}.connection-bar[data-v-8e17050b]{border-radius:var(--radius-sm);color:var(--text-muted);background:#ffffff05;flex-wrap:wrap;align-items:center;gap:7px;margin-top:10px;padding:6px 10px;font-size:11.5px;display:flex}.connection-bar.connected[data-v-8e17050b]{background:var(--green-bg);color:var(--green)}.dot[data-v-8e17050b]{background:var(--text-muted);border-radius:50%;width:7px;height:7px}.connected .dot[data-v-8e17050b]{background:var(--green);animation:2s infinite pulse-8e17050b;box-shadow:0 0 6px #22c55e99}.device-meta[data-v-8e17050b]{font-family:var(--font-mono,monospace);opacity:.95;margin-left:auto;font-size:11px}@keyframes pulse-8e17050b{0%,to{opacity:1}50%{opacity:.5}}.auto-answer-row[data-v-adcb29c9]{cursor:pointer;align-items:center;gap:8px;margin-top:10px;font-size:13px;display:flex}.hint[data-v-adcb29c9]{color:var(--muted,#888);margin:8px 0 0;font-size:12px;line-height:1.4}.call-state[data-v-adcb29c9]{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.badge-orange[data-v-adcb29c9]{color:var(--orange,#d97706);background:#f59e0b26}.action-error[data-v-c158a447]{border-radius:var(--radius-sm);color:#f87171;background:#ef44441f;margin-bottom:10px;padding:8px 10px;font-size:12px;line-height:1.4}.connect-hint[data-v-c158a447]{border-radius:var(--radius-sm);color:#fbbf24;background:#eab3081f;margin-bottom:10px;padding:8px 10px;font-size:12px;line-height:1.4}.batch-hint[data-v-c158a447]{color:var(--text-muted);margin:-4px 0 8px;font-size:11px}.panel-header[data-v-c158a447]{gap:10px}.panel-tabs[data-v-c158a447]{flex:1;gap:4px;display:flex}.panel-tab[data-v-c158a447]{border-radius:var(--radius-sm);color:var(--text-secondary);background:0 0;border:1px solid #0000;padding:4px 12px;font-size:12.5px;font-weight:500}.panel-tab[data-v-c158a447]:hover{background:var(--bg-input);color:var(--text-primary);box-shadow:none;transform:none}.panel-tab.active[data-v-c158a447]{color:var(--accent-hover);background:#6366f11f;border-color:#6366f159}.warm-desc[data-v-c158a447]{color:var(--text-muted);margin-bottom:8px;font-size:11px;line-height:1.4}.batch-area[data-v-c158a447]{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text);resize:vertical;min-height:80px;padding:8px 10px;font-family:inherit;font-size:12.5px}.batch-stats-grid[data-v-c158a447]{grid-template-columns:repeat(5,1fr);gap:6px;margin-bottom:8px;display:grid}.batch-stat-item[data-v-c158a447]{background:var(--bg-input);border:1px solid var(--border);border-radius:4px;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;display:flex}.batch-stat-value[data-v-c158a447]{color:var(--accent-hover);font-size:14px;font-weight:600;line-height:1.2}.batch-stat-label[data-v-c158a447]{color:var(--text-muted);white-space:nowrap;font-size:10px}.stats-bar[data-v-c158a447]{color:var(--text-secondary);background:var(--bg-input);border:1px solid var(--border);border-radius:4px;margin-bottom:8px;padding:6px 8px;font-size:11.5px}.managed-tip[data-v-c158a447]{color:var(--yellow,#eab308);margin-bottom:8px;font-size:11px}.config-grid[data-v-c158a447]{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px;display:grid}.config-item.span-2[data-v-c158a447]{grid-column:span 2}.interval-row[data-v-c158a447]{align-items:center;gap:6px;display:flex}.interval-sep[data-v-c158a447]{color:var(--text-secondary);font-size:12px}.config-item[data-v-c158a447]{color:var(--text-secondary);flex-direction:column;gap:4px;font-size:11px;display:flex}.config-input[data-v-c158a447]{text-align:center;width:100%;padding:4px 6px}.hint[data-v-c158a447]{opacity:.75;font-size:10px}.batch-progress[data-v-c158a447]{color:var(--teal);background:var(--teal-bg);border:1px solid #14b8a633;border-radius:4px;margin-bottom:8px;padding:4px 8px;font-size:11.5px}.batch-progress.warm[data-v-c158a447]{color:var(--accent-hover);background:#6366f114;border-color:#6366f140}.rec-dot[data-v-456e99b7]{background:var(--text-muted);border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-right:6px;display:inline-block}.rec-dot.on[data-v-456e99b7]{background:var(--red);animation:.8s infinite blink-456e99b7;box-shadow:0 0 6px #ef444499}@keyframes blink-456e99b7{0%,to{opacity:1}50%{opacity:.3}}.voice-config-card[data-v-08cf56f6]{background:radial-gradient(circle at 92% -8%, #2dd4bf1f, transparent 28%), radial-gradient(circle at 8% 0%, #6366f126, transparent 30%), var(--bg-secondary);border-color:#6366f147;position:relative;overflow:hidden}.voice-config-card[data-v-08cf56f6]:before{content:"";background:linear-gradient(90deg, var(--accent), var(--teal), transparent 75%);height:2px;position:absolute;inset:0 0 auto}.voice-config-hero[data-v-08cf56f6]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:14px;padding:10px 4px 16px;display:flex}.voice-eyebrow[data-v-08cf56f6]{color:var(--teal);font-family:var(--font-mono,monospace);letter-spacing:.2em;margin-bottom:5px;font-size:9px;font-weight:700}.voice-config-hero h2[data-v-08cf56f6]{color:var(--text-primary);letter-spacing:-.02em;margin:0;font-size:22px}.voice-config-hero p[data-v-08cf56f6]{color:var(--text-muted);margin:6px 0 0;font-size:12px}.engine-row[data-v-08cf56f6]{align-items:center;gap:8px;margin-bottom:8px;display:flex}.engine-row label[data-v-08cf56f6]{color:var(--text-secondary);white-space:nowrap;font-size:12px}.volc-settings[data-v-08cf56f6]{border-radius:var(--radius-sm);background:#05081238;border:1px solid #6366f14d;margin-bottom:12px;padding:12px}.volc-settings-body[data-v-08cf56f6]{flex-direction:column;gap:12px;display:flex}.volc-settings-body input[data-v-08cf56f6],.volc-settings-body select[data-v-08cf56f6],.volc-settings-body textarea[data-v-08cf56f6]{width:100%}.volc-settings-body textarea[data-v-08cf56f6]{resize:vertical;color:var(--text-primary);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;padding:7px 9px;font-family:inherit;font-size:12px;line-height:1.45}.volc-settings-body textarea[data-v-08cf56f6]:focus{border-color:var(--accent);box-shadow:0 0 0 3px #6366f126}.field-label[data-v-08cf56f6]{color:var(--text-secondary);margin-top:2px;font-size:11px}.settings-section[data-v-08cf56f6]{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff05;flex-direction:column;gap:7px;padding:14px;display:flex}.credential-section[data-v-08cf56f6]{background:#14b8a609;border-color:#2dd4bf3d}.section-heading[data-v-08cf56f6]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:2px;padding-bottom:8px;display:flex}.section-heading>div[data-v-08cf56f6]{flex-direction:column;gap:3px;display:flex}.section-heading strong[data-v-08cf56f6]{color:var(--text-primary);font-size:13px}.section-heading small[data-v-08cf56f6]{color:var(--text-muted);font-size:10.5px;font-weight:400}.credential-map-title[data-v-08cf56f6]{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;grid-template-columns:1fr 1fr;gap:10px;padding:0 2px;font-size:9.5px;display:grid}.credential-map-title span[data-v-08cf56f6]:last-child{text-align:right}.credential-grid[data-v-08cf56f6]{grid-template-columns:1fr 1fr;gap:10px;display:grid}.credential-grid-three[data-v-08cf56f6]{grid-template-columns:repeat(3,minmax(0,1fr))}.credential-grid label[data-v-08cf56f6]{color:var(--text-secondary);flex-direction:column;gap:5px;font-size:10.5px;display:flex}.credential-field[data-v-08cf56f6]{background:#0206172e;border:1px solid #2dd4bf29;border-radius:6px;padding:10px}.credential-field-title[data-v-08cf56f6]{justify-content:space-between;align-items:center;gap:8px;display:flex}.credential-field-title b[data-v-08cf56f6]{color:var(--text-primary);font-size:11.5px}.credential-field-title code[data-v-08cf56f6]{color:var(--teal);font-family:var(--font-mono,monospace);background:#14b8a617;border-radius:3px;padding:2px 5px;font-size:9.5px}.credential-field small[data-v-08cf56f6]{min-height:15px;color:var(--text-muted);font-size:9.5px;line-height:1.45}.secret-key-notice[data-v-08cf56f6]{background:#f59e0b0d;border:1px solid #f59e0b33;border-radius:6px;padding:9px 10px}.secret-key-notice>div[data-v-08cf56f6]{align-items:center;gap:8px;display:flex}.secret-key-notice b[data-v-08cf56f6]{color:#fbbf24;font-size:11.5px}.credential-status[data-v-08cf56f6]{color:#fbbf24;background:#f59e0b1a;border-radius:999px;padding:2px 6px;font-size:9.5px}.secret-key-notice p[data-v-08cf56f6]{color:var(--text-muted);margin:5px 0 0;font-size:10px;line-height:1.5}.protocol-details[data-v-08cf56f6]{border-top:1px dashed #94a3b82e;padding-top:8px}.protocol-details summary[data-v-08cf56f6]{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:10.5px}.protocol-grid[data-v-08cf56f6]{margin-top:8px}.credential-hint[data-v-08cf56f6]{border-left:2px solid var(--teal);color:var(--text-muted);background:#14b8a60e;padding:8px 10px;font-size:10.5px;line-height:1.5}.credential-hint a[data-v-08cf56f6]{color:var(--teal);border-bottom:1px dashed #2dd4bf8c;text-decoration:none}.credential-hint a[data-v-08cf56f6]:hover{color:#5eead4}.switch-row[data-v-08cf56f6]{color:var(--teal);white-space:nowrap;align-items:center;gap:6px;font-size:11px;display:flex}.switch-row input[data-v-08cf56f6]{width:auto;accent-color:var(--teal)}.script-editor[data-v-08cf56f6]{min-height:330px;font-family:var(--font-mono,"Microsoft YaHei UI", monospace)!important;font-size:11.5px!important;line-height:1.65!important}.script-format[data-v-08cf56f6]{flex-wrap:wrap;gap:6px;display:flex}.script-format code[data-v-08cf56f6]{color:var(--accent-hover);background:#6366f112;border:1px solid #6366f13d;border-radius:4px;padding:4px 7px;font-size:10px}.save-config-button[data-v-08cf56f6]{letter-spacing:.04em;width:100%;min-height:38px;font-weight:700}.config-error[data-v-08cf56f6]{color:var(--red);background:var(--red-bg);border:1px solid #ef444433}.parameter-grid[data-v-08cf56f6]{grid-template-columns:1fr 1fr;gap:7px;display:grid}.parameter-grid label[data-v-08cf56f6]{color:var(--text-muted);flex-direction:column;gap:3px;font-size:10.5px;display:flex}.parameter-wide[data-v-08cf56f6]{grid-column:1/-1}.voice-option-row[data-v-08cf56f6]{grid-template-columns:minmax(0,1fr) 72px;gap:8px;display:grid}.preview-button[data-v-08cf56f6]{text-align:center;min-height:34px}.preview-button[data-v-08cf56f6]:disabled{cursor:not-allowed;opacity:.45}.speech-rate-control[data-v-08cf56f6]{grid-template-columns:1fr 72px;align-items:center;gap:8px;display:grid}.speech-rate-control input[type=range][data-v-08cf56f6]{accent-color:var(--accent);padding:0}.speech-rate-control .speech-rate-number[data-v-08cf56f6]{text-align:center;width:72px}.speech-rate-hint[data-v-08cf56f6]{color:var(--text-muted);font-size:10px;font-weight:400}.check-row[data-v-08cf56f6]{color:var(--text-secondary);align-items:center;gap:7px;font-size:11.5px;display:flex}.check-row input[data-v-08cf56f6]{width:auto}.simulation-panel[data-v-08cf56f6]{border-radius:var(--radius-sm);background:#a855f712;border:1px solid #a855f759;margin-bottom:8px;padding:10px}.simulation-heading[data-v-08cf56f6]{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.simulation-heading>div[data-v-08cf56f6]{align-items:center;gap:7px;display:flex}.simulation-title[data-v-08cf56f6]{color:var(--text-primary);font-size:12px;font-weight:600}.simulation-state[data-v-08cf56f6]{color:var(--text-muted);white-space:nowrap;align-items:center;gap:5px;font-size:10.5px;display:flex}.simulation-dot[data-v-08cf56f6]{background:var(--text-muted);border-radius:50%;width:7px;height:7px}.simulation-state.running[data-v-08cf56f6]{color:var(--teal)}.simulation-state.running .simulation-dot[data-v-08cf56f6]{background:var(--teal);animation:.8s infinite blink-08cf56f6;box-shadow:0 0 7px #14b8a6a6}.simulation-state.error[data-v-08cf56f6]{color:var(--red)}.simulation-state.error .simulation-dot[data-v-08cf56f6]{background:var(--red)}.simulation-button[data-v-08cf56f6]{border-radius:var(--radius-sm);color:#fff;cursor:pointer;background:linear-gradient(135deg,#7c3aedf2,#6366f1f2);border:1px solid #a855f78c;width:100%;padding:9px 12px;font-size:12.5px;font-weight:600}.simulation-button.stop[data-v-08cf56f6]{color:var(--red);background:#ef444429;border-color:#ef44448c}.simulation-button[data-v-08cf56f6]:disabled{cursor:not-allowed;opacity:.48}.simulation-message[data-v-08cf56f6]{color:var(--text-secondary);margin-top:7px;font-size:11px}.simulation-error[data-v-08cf56f6]{color:var(--red);background:var(--red-bg);border-radius:4px;margin-top:6px;padding:6px 8px;font-size:11px}.asr-bar[data-v-08cf56f6]{gap:6px;margin-bottom:6px;display:flex}.asr-dot[data-v-08cf56f6]{background:var(--text-muted);border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-right:6px;display:inline-block}.asr-dot.on[data-v-08cf56f6]{background:var(--red);animation:.8s infinite blink-08cf56f6;box-shadow:0 0 6px #ef444499}.asr-transcript[data-v-08cf56f6]{background:var(--red-bg);border-radius:var(--radius-sm);color:var(--red);border:1px solid #ef444440;margin-top:6px;padding:8px 10px;font-size:12.5px;font-style:italic}.hotword-block[data-v-08cf56f6]{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff05;margin-top:8px;padding:8px}.hotword-header[data-v-08cf56f6]{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.hotword-title[data-v-08cf56f6]{color:var(--text-secondary);font-size:12px;font-weight:500}.hotword-toggle[data-v-08cf56f6]{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:11px}.hotword-area[data-v-08cf56f6]{box-sizing:border-box;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text);resize:vertical;min-height:72px;padding:8px 10px;font-size:12px;line-height:1.5}.hotword-actions[data-v-08cf56f6]{gap:8px;margin-top:8px;display:flex}.hotword-actions .btn-outline[data-v-08cf56f6],.hotword-actions .btn-accent[data-v-08cf56f6]{flex:1}.hotword-hint[data-v-08cf56f6]{color:var(--text-muted);margin-top:6px;font-size:10.5px}.settings-block[data-v-08cf56f6]{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff05;flex-direction:column;gap:6px;margin-top:4px;padding:8px;display:flex}.settings-block input[data-v-08cf56f6]{width:100%}.voice-select[data-v-08cf56f6]{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);padding:8px 10px;font-size:13px}.result-line[data-v-08cf56f6]{border-radius:4px;padding:4px 8px;font-size:11.5px}.result-line.teal[data-v-08cf56f6]{color:var(--teal);background:var(--teal-bg);border:1px solid #14b8a633}.result-line.purple[data-v-08cf56f6]{color:var(--purple);background:var(--purple-bg);border:1px solid #a855f733}.readonly-field[data-v-08cf56f6]{opacity:.92;cursor:default;background:#0f172a0a!important}@keyframes blink-08cf56f6{0%,to{opacity:1}50%{opacity:.3}}@media (width<=760px){.credential-grid[data-v-08cf56f6],.parameter-grid[data-v-08cf56f6],.credential-map-title[data-v-08cf56f6]{grid-template-columns:1fr}.credential-map-title span[data-v-08cf56f6]:last-child{display:none}.parameter-wide[data-v-08cf56f6]{grid-column:auto}.voice-config-hero[data-v-08cf56f6]{align-items:center}}.log-card[data-v-27396f95]{flex-direction:column;height:100%;display:flex;overflow:hidden}.log-header[data-v-27396f95]{flex-wrap:wrap;align-items:center;gap:8px}.log-filters[data-v-27396f95]{flex-wrap:wrap;flex:1;gap:8px 12px;min-width:0;display:flex}.log-filter-item[data-v-27396f95]{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:4px;font-size:11px;display:inline-flex}.log-filter-item input[data-v-27396f95]{accent-color:var(--accent);margin:0}.log-count[data-v-27396f95]{color:var(--text-muted);background:#ffffff0d;border-radius:10px;flex-shrink:0;margin-left:auto;padding:1px 7px;font-size:10px}.log-viewport[data-v-27396f95]{background:var(--bg-terminal);border:1px solid var(--border);border-radius:var(--radius-sm);flex:1;padding:6px 0;font-family:JetBrains Mono,Consolas,Courier New,monospace;font-size:11.5px;line-height:1.65;overflow-y:auto}.log-line[data-v-27396f95]{color:var(--text-secondary);padding:1px 10px;display:flex}.log-line[data-v-27396f95]:hover{background:#ffffff05}.line-no[data-v-27396f95]{color:var(--text-muted);text-align:right;opacity:.4;flex-shrink:0;width:38px;margin-right:10px;font-size:10px}.log-customer[data-v-27396f95]{color:var(--red)}.log-ai[data-v-27396f95]{color:var(--purple)}.log-device[data-v-27396f95]{color:var(--teal)}.log-link[data-v-27396f95]{color:var(--orange,#f59e0b);font-weight:500}.log-call-status[data-v-27396f95]{color:var(--green);font-weight:500}.log-other[data-v-27396f95]{color:var(--blue)}.log-error[data-v-27396f95]{color:var(--red);background:var(--red-bg)}.log-empty[data-v-27396f95]{height:100%;color:var(--text-muted);justify-content:center;align-items:center;gap:8px;font-size:14px;display:flex}.page-shell[data-v-3b52d332]{flex-direction:column;height:100%;min-height:0;display:flex}.page-header[data-v-3b52d332]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:12px;display:flex}.page-header h2[data-v-3b52d332]{font-size:15px;font-weight:600}.page-body[data-v-3b52d332]{flex:1;grid-template-columns:180px 280px 1fr;gap:12px;min-height:0;display:grid}.day-list[data-v-3b52d332],.call-list[data-v-3b52d332],.transcript-panel[data-v-3b52d332]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);min-height:0;padding:10px;overflow-y:auto}.aside-title[data-v-3b52d332]{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:11px}.call-list-head[data-v-3b52d332]{z-index:1;background:var(--bg-card);border-bottom:1px solid var(--border);margin-bottom:4px;padding-bottom:8px;position:sticky;top:0}.call-list-head .aside-title[data-v-3b52d332]{margin-bottom:6px}.call-filters[data-v-3b52d332]{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.filter-input[data-v-3b52d332],.filter-select[data-v-3b52d332]{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-primary);padding:6px 8px;font-size:12px}.filter-input[data-v-3b52d332]{flex:120px;min-width:0}.filter-select[data-v-3b52d332]{flex:none}.filter-clear[data-v-3b52d332]{padding:5px 8px;font-size:11px}.day-item[data-v-3b52d332],.call-item[data-v-3b52d332]{text-align:left;border-radius:var(--radius-sm);width:100%;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;margin-bottom:4px;padding:8px 10px;display:block}.day-item[data-v-3b52d332]:hover,.call-item[data-v-3b52d332]:hover{background:var(--bg-input);box-shadow:none;transform:none}.day-item.active[data-v-3b52d332],.call-item.active[data-v-3b52d332]{border-color:var(--accent);color:var(--text-primary);background:#6366f114}.day-date[data-v-3b52d332]{font-size:12.5px;font-weight:500;display:block}.day-meta[data-v-3b52d332]{color:var(--text-muted);font-size:10.5px}.call-row[data-v-3b52d332]{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.phone[data-v-3b52d332]{color:var(--text-primary);font-weight:600}.phone.muted[data-v-3b52d332]{color:var(--orange);font-size:12px;font-weight:500}.detail-bar[data-v-3b52d332]{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:10px;padding-bottom:8px;font-size:12px;display:flex}.phone-field[data-v-3b52d332]{flex-direction:column;gap:4px;min-width:220px;display:flex}.phone-field label[data-v-3b52d332]{color:var(--text-muted);font-size:10px}.phone-row[data-v-3b52d332]{gap:6px;display:flex}.phone-input[data-v-3b52d332]{flex:1;min-width:140px}.tag-intent[data-v-3b52d332]{background:var(--green-bg);color:var(--green);border-radius:8px;padding:1px 6px;font-size:10px}.tag-reject[data-v-3b52d332]{background:var(--red-bg);color:var(--red);border-radius:8px;padding:1px 6px;font-size:10px}.tag-unclear[data-v-3b52d332]{color:var(--orange);background:#f59e0b1f;border-radius:8px;padding:1px 6px;font-size:10px}.tag-direct-hangup[data-v-3b52d332]{background:var(--orange-bg);color:var(--orange);border-radius:8px;padding:1px 6px;font-size:10px}.tag-not-connected[data-v-3b52d332]{color:var(--text-muted);background:#94a3b826;border-radius:8px;padding:1px 6px;font-size:10px}.call-meta[data-v-3b52d332]{color:var(--text-muted);margin:2px 0;font-size:10.5px}.call-tags[data-v-3b52d332],.detail-tags[data-v-3b52d332]{flex-wrap:wrap;gap:4px;margin:4px 0;display:flex}.detail-tags[data-v-3b52d332]{flex:100%}.asset-tag[data-v-3b52d332]{border-radius:8px;padding:1px 7px;font-size:10px;font-weight:600}.asset-tag.interested[data-v-3b52d332]{color:var(--accent-hover);background:#6366f11f;border:1px solid #6366f140}.asset-tag.rejected[data-v-3b52d332]{background:var(--red-bg);color:var(--red);border:1px solid #ef444459}.asset-tag.unclear[data-v-3b52d332]{color:var(--orange);background:#f59e0b1f;border:1px solid #f59e0b40}.asset-tag.amount.interested[data-v-3b52d332]{color:var(--orange);background:#f59e0b1f;border-color:#f59e0b40}.asset-tag.amount.rejected[data-v-3b52d332]{background:var(--red-bg);color:var(--red);border-color:#ef444459}.call-preview[data-v-3b52d332]{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.summary-block[data-v-3b52d332]{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:12px;padding:10px 12px}.summary-title[data-v-3b52d332]{color:var(--text-muted);letter-spacing:.04em;margin-bottom:6px;font-size:11px;font-weight:600}.summary-text[data-v-3b52d332]{color:var(--text-primary);margin:0;font-size:12.5px;line-height:1.6}.summary-text.muted[data-v-3b52d332]{color:var(--text-muted)}.transcript-body[data-v-3b52d332]{font-family:JetBrains Mono,monospace;font-size:11.5px;line-height:1.75}.transcript-line[data-v-3b52d332]{margin-bottom:8px}.line-time[data-v-3b52d332]{color:var(--text-muted);margin-right:4px}.line-label[data-v-3b52d332]{margin-right:2px;font-weight:600}.user-label[data-v-3b52d332],.user-text[data-v-3b52d332]{color:var(--red)}.assistant-label[data-v-3b52d332],.assistant-text[data-v-3b52d332]{color:#3b82f6}.line-meta[data-v-3b52d332]{color:var(--text-muted);white-space:pre-wrap}.empty-transcript[data-v-3b52d332]{color:var(--text-muted);padding:12px 0;font-size:12px}.empty-hint[data-v-3b52d332]{color:var(--text-muted);text-align:center;padding:20px;font-size:12px}.boot-screen[data-v-0f583903]{min-height:100vh;color:var(--text-muted);background:var(--bg-primary);justify-content:center;align-items:center;gap:10px;font-size:13px;display:flex}.boot-dot[data-v-0f583903]{background:var(--accent);border-radius:50%;width:8px;height:8px;animation:1.2s infinite pulse-0f583903}@keyframes pulse-0f583903{0%,to{opacity:.35}50%{opacity:1}}.app-shell[data-v-0f583903]{flex-direction:column;height:100vh;display:flex;overflow:hidden}.topbar[data-v-0f583903]{border-bottom:1px solid var(--border);background:var(--bg-secondary);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex-shrink:0}.topbar-inner[data-v-0f583903]{align-items:center;gap:16px;width:100%;max-width:1400px;height:44px;margin:0 auto;padding:0 18px;display:flex}.brand[data-v-0f583903]{flex-shrink:0;align-items:center;gap:10px;display:flex}.brand-icon[data-v-0f583903]{object-fit:cover;border-radius:6px;flex-shrink:0;width:22px;height:22px}.brand h1[data-v-0f583903]{letter-spacing:.02em;color:var(--text-primary);font-size:14px;font-weight:700}.top-nav[data-v-0f583903]{flex:1;justify-content:center;gap:4px;display:flex}.nav-tab[data-v-0f583903]{border-radius:var(--radius-sm);color:var(--text-secondary);background:0 0;border:1px solid #0000;padding:6px 14px;font-size:12.5px;font-weight:500}.nav-tab[data-v-0f583903]:hover{background:var(--bg-input);color:var(--text-primary);box-shadow:none;transform:none}.nav-tab.active[data-v-0f583903]{color:var(--accent-hover);background:#6366f11f;border-color:#6366f159}.topbar-right[data-v-0f583903]{color:var(--text-secondary);flex-shrink:0;align-items:center;gap:10px;font-size:12px;display:flex}.device-tag[data-v-0f583903]{font-family:var(--font-mono,monospace);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:90px;font-size:10px;overflow:hidden}.user-label[data-v-0f583903]{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;max-width:100px;overflow:hidden}.btn-logout[data-v-0f583903]{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);background:0 0;padding:4px 10px;font-size:11px}.btn-logout[data-v-0f583903]:hover{border-color:var(--border-hover);color:var(--text-primary)}.status-indicator[data-v-0f583903]{background:var(--text-muted);border-radius:50%;width:7px;height:7px}.status-indicator.active[data-v-0f583903]{background:var(--green);box-shadow:0 0 8px #22c55e80}.main-grid[data-v-0f583903]{flex:1;grid-template-columns:1fr 360px;gap:12px;width:100%;max-width:1400px;min-height:0;margin:0 auto;padding:12px 18px;display:grid;overflow:hidden}.page-grid[data-v-0f583903]{flex:1;width:100%;max-width:1400px;min-height:0;margin:0 auto;padding:12px 18px;overflow:hidden}.voice-page[data-v-0f583903]{flex:1;width:100%;max-width:1180px;min-height:0;margin:0 auto;padding:18px;overflow-y:auto}.span-log[data-v-0f583903]{min-width:0;min-height:0}.span-ctrl[data-v-0f583903]{min-width:0;min-height:0;overflow-y:auto}.ctrl-scroll[data-v-0f583903]{flex-direction:column;gap:10px;display:flex}
