.modal-content[data-v-7f3df9aa]{position:fixed;background:var(--color-bg);border-radius:var(--radius-md);width:280px;max-height:320px;overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid var(--color-border);z-index:10000}.modal-header[data-v-7f3df9aa]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);background:var(--color-bg-tertiary);border-bottom:1px solid var(--color-border);cursor:move;-webkit-user-select:none;user-select:none}.modal-title[data-v-7f3df9aa]{font-weight:var(--font-weight-semibold);font-size:var(--text-sm);color:var(--color-text)}.close-btn[data-v-7f3df9aa]{background:none;border:none;font-size:1.2rem;cursor:pointer;color:var(--color-text-muted);padding:0 4px}.close-btn[data-v-7f3df9aa]:hover{color:var(--color-text)}.modal-body[data-v-7f3df9aa]{padding:var(--space-sm);overflow-y:auto;max-height:260px}.tabs[data-v-7f3df9aa]{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-bottom:var(--space-sm);border-bottom:1px solid var(--color-border-light);padding-bottom:var(--space-sm)}.tab-btn[data-v-7f3df9aa]{background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-xs) var(--space-sm);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-fast)}.tab-btn[data-v-7f3df9aa]:hover{background:var(--color-bg-hover)}.tab-btn.active[data-v-7f3df9aa]{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.character-grid[data-v-7f3df9aa]{display:grid;grid-template-columns:repeat(auto-fill,minmax(32px,1fr));gap:var(--space-xs)}.char-btn[data-v-7f3df9aa]{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:1.1rem;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.char-btn[data-v-7f3df9aa]:hover{background:var(--color-primary-light);border-color:var(--color-primary);transform:scale(1.1)}.macros-list[data-v-7f3df9aa]{display:flex;flex-direction:column;gap:var(--space-sm)}.macro-item[data-v-7f3df9aa]{padding:var(--space-sm);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast)}.macro-item[data-v-7f3df9aa]:hover{background:var(--color-primary-light);border-color:var(--color-primary)}.macro-name[data-v-7f3df9aa]{font-weight:var(--font-weight-semibold);font-size:var(--text-xs);color:var(--color-text)}.macro-example[data-v-7f3df9aa]{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-muted);margin:var(--space-xs) 0;word-break:break-all}.macro-desc[data-v-7f3df9aa]{font-size:.7rem;color:var(--color-text-light)}.character-table-container[data-v-e1e5fdce]{position:relative;width:100%}.input-wrapper[data-v-e1e5fdce]{display:flex;align-items:flex-end;gap:4px;width:100%}.input-wrapper[data-v-e1e5fdce] input,.input-wrapper[data-v-e1e5fdce] textarea{flex:1;min-width:0}.character-table-button[data-v-e1e5fdce]{background:#f5f5f5;border:1px solid #ddd;border-radius:4px;padding:4px 8px;cursor:pointer;font-size:14px;color:#333;min-width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.character-table-button[data-v-e1e5fdce]:hover{background:#e0e0e0;border-color:#bbb}.character-table-button[data-v-e1e5fdce]:active{background:#d0d0d0;transform:translateY(1px)}.escape-preview[data-v-e1e5fdce]{position:absolute;top:-25px;left:0;background:#000c;color:#fff;padding:2px 8px;border-radius:4px;font-size:12px;font-family:monospace;z-index:1000;white-space:nowrap}.file-uploader[data-v-9b7aa7c1]{margin-top:12px}.upload-area[data-v-9b7aa7c1]{display:flex;align-items:center;gap:12px;margin-bottom:12px}.btn-upload[data-v-9b7aa7c1]{background:#2196f3;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer}.btn-upload[data-v-9b7aa7c1]:hover:not(:disabled){background:#1976d2}.btn-upload[data-v-9b7aa7c1]:disabled{background:#bbb;cursor:not-allowed}.upload-note[data-v-9b7aa7c1]{color:#666;font-size:.85rem}.files-list[data-v-9b7aa7c1]{display:flex;flex-direction:column;gap:8px}.file-item[data-v-9b7aa7c1]{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#f5f5f5;border-radius:6px}.file-info[data-v-9b7aa7c1]{display:flex;align-items:center;gap:12px}.file-icon[data-v-9b7aa7c1]{font-size:1.5rem}.file-name[data-v-9b7aa7c1]{font-weight:500}.file-meta[data-v-9b7aa7c1]{font-size:.85rem;color:#666}.ai-badge[data-v-9b7aa7c1]{display:inline-block;margin-left:8px;padding:2px 6px;background:#e8f5e9;color:#2e7d32;border-radius:3px;font-size:.75rem}.btn-delete[data-v-9b7aa7c1]{background:none;border:1px solid #e57373;color:#e57373;width:28px;height:28px;border-radius:50%;cursor:pointer}.btn-delete[data-v-9b7aa7c1]:hover{background:#ffebee}.no-files[data-v-9b7aa7c1]{padding:24px;text-align:center;color:#666;font-style:italic;background:#fafafa;border-radius:6px}.assumptions-editor[data-v-627a0ee6]{padding:1rem;border:1px solid var(--color-border, #e0e0e0);border-radius:6px;background:var(--color-background-soft, #f9f9f9);margin:1rem 0}.assumptions-editor h4[data-v-627a0ee6]{margin:0 0 1rem;font-size:1rem;font-weight:600}.add-form[data-v-627a0ee6]{margin-bottom:1rem}.form-row[data-v-627a0ee6]{display:flex;gap:.75rem;align-items:flex-end;flex-wrap:wrap}.form-group[data-v-627a0ee6]{display:flex;flex-direction:column;gap:.25rem;min-width:120px}.form-label[data-v-627a0ee6]{font-size:.85rem;font-weight:500}.input[data-v-627a0ee6],.select[data-v-627a0ee6]{padding:.5rem;border:1px solid var(--color-border, #ddd);border-radius:4px;font-size:.9rem}.input[data-v-627a0ee6]:focus,.select[data-v-627a0ee6]:focus{outline:none;border-color:var(--color-primary, #2196f3)}.assumptions-list[data-v-627a0ee6]{margin-top:1rem}.list-header[data-v-627a0ee6]{font-size:.9rem;font-weight:500;margin-bottom:.5rem}.chips[data-v-627a0ee6]{display:flex;flex-wrap:wrap;gap:.5rem}.chip[data-v-627a0ee6]{display:flex;align-items:center;background:#fff;border:1px solid var(--color-border, #ddd);border-radius:16px;padding:.25rem .5rem .25rem .75rem;font-size:.85rem}.chip-remove[data-v-627a0ee6]{background:none;border:none;color:#666;cursor:pointer;font-size:1rem;padding:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s;margin-left:.25rem}.chip-remove[data-v-627a0ee6]:hover{background:#e57373;color:#fff}@media(max-width:768px){.form-row[data-v-627a0ee6]{flex-direction:column;align-items:stretch}.form-group[data-v-627a0ee6]{min-width:auto}}.modal-overlay[data-v-a2de734d]{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:var(--z-modal-backdrop);padding:var(--space-xl);animation:modal-fade-in-a2de734d .2s ease-out}.modal-container[data-v-a2de734d]{background:var(--color-bg);border-radius:var(--radius-xl);position:relative;width:100%;max-width:640px;max-height:calc(100vh - var(--space-4xl));display:flex;flex-direction:column;box-shadow:var(--shadow-xl);z-index:var(--z-modal);animation:modal-slide-in-a2de734d .3s ease-out}.modal-container.modal-sm[data-v-a2de734d]{max-width:480px}.modal-container.modal-md[data-v-a2de734d]{max-width:800px}.modal-container.modal-lg[data-v-a2de734d]{max-width:1000px}.modal-container.modal-xl[data-v-a2de734d]{max-width:1200px}.modal-container.modal-full[data-v-a2de734d]{max-width:1400px;width:95vw}.max-w-sm[data-v-a2de734d]{max-width:480px}.max-w-md[data-v-a2de734d]{max-width:640px}.max-w-lg[data-v-a2de734d]{max-width:800px}.max-w-xl[data-v-a2de734d]{max-width:1000px}.modal-header[data-v-a2de734d]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-lg) var(--space-xl);border-bottom:1px solid var(--color-border);background:linear-gradient(135deg,#1e40af,#3b82f6);color:#fff;border-radius:var(--radius-xl) var(--radius-xl) 0 0;flex-shrink:0}.modal-header h2[data-v-a2de734d]{margin:0;font-size:var(--text-lg);font-weight:var(--font-weight-semibold);color:#fff}.modal-header .close-btn[data-v-a2de734d]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-lg);color:#fff;font-size:1.25rem;cursor:pointer;transition:all var(--transition-fast)}.modal-header .close-btn[data-v-a2de734d]:hover:not(:disabled){background:#fff3;border-color:#ffffff4d;transform:scale(1.05)}.modal-header .close-btn[data-v-a2de734d]:disabled{opacity:.5;cursor:not-allowed;transform:none}.modal-body[data-v-a2de734d]{flex:1;padding:var(--space-xl);overflow-y:auto;background:#fafbfc}.modal-body.padded-lg[data-v-a2de734d]{padding:var(--space-2xl)}.modal-footer[data-v-a2de734d]{display:flex;justify-content:flex-end;align-items:center;gap:var(--space-md);padding:var(--space-lg) var(--space-xl);border-top:1px solid var(--color-border);background:#fff;border-radius:0 0 var(--radius-xl) var(--radius-xl);flex-shrink:0}.modal-footer .unsaved-indicator[data-v-a2de734d]{margin-right:auto;color:var(--color-warning);font-size:var(--text-sm)}.settings-section[data-v-a2de734d],.modal-section[data-v-a2de734d]{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);margin-bottom:var(--space-xl)}.settings-section[data-v-a2de734d]:last-child,.modal-section[data-v-a2de734d]:last-child{margin-bottom:0}.settings-section h3[data-v-a2de734d],.modal-section h3[data-v-a2de734d]{margin:0 0 var(--space-lg) 0;font-size:var(--text-base);font-weight:var(--font-weight-semibold);color:var(--color-text);padding-bottom:var(--space-sm);border-bottom:3px solid #3b82f6}.modal-section-help[data-v-a2de734d],.section-help[data-v-a2de734d]{margin-bottom:var(--space-lg);color:var(--color-text-muted);font-size:var(--text-sm)}.modal-body.two-panel[data-v-a2de734d]{display:flex;padding:0}.modal-panel-left[data-v-a2de734d]{width:320px;flex-shrink:0;padding:var(--space-xl);border-right:1px solid var(--color-border);background:var(--color-bg-secondary);overflow-y:auto}.modal-panel-right[data-v-a2de734d]{flex:1;padding:var(--space-xl);overflow-y:auto}.split-pane[data-v-a2de734d]{display:flex;gap:var(--space-lg);height:100%;min-height:400px}.left-pane[data-v-a2de734d]{width:300px;flex-shrink:0;border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;flex-direction:column;background:#fff}.right-pane[data-v-a2de734d]{flex:1;border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;flex-direction:column;background:#fff}.pane-header[data-v-a2de734d]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary)}.pane-header h3[data-v-a2de734d]{margin:0;font-size:var(--text-base);font-weight:var(--font-weight-semibold)}.form-group[data-v-a2de734d]{margin-bottom:var(--space-lg)}.form-group[data-v-a2de734d]:last-child{margin-bottom:0}.form-label[data-v-a2de734d]{display:block;margin-bottom:var(--space-sm);font-weight:var(--font-weight-medium);color:var(--color-text);font-size:var(--text-sm)}.form-row[data-v-a2de734d]{display:flex;gap:var(--space-sm);align-items:center}.form-row>.input[data-v-a2de734d],.form-row>.select[data-v-a2de734d]{flex:1}.form-error[data-v-a2de734d]{color:var(--color-error);font-size:var(--text-sm);margin-top:var(--space-xs)}.form-help[data-v-a2de734d],.field-help[data-v-a2de734d]{color:var(--color-text-muted);font-size:var(--text-sm);margin-top:var(--space-xs)}.input[data-v-a2de734d],.select[data-v-a2de734d],.textarea[data-v-a2de734d]{width:100%;padding:var(--space-md) var(--space-lg);border:2px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-sm);font-family:inherit;background:#fff;color:var(--color-text);transition:all var(--transition-fast)}.input[data-v-a2de734d]:focus,.select[data-v-a2de734d]:focus,.textarea[data-v-a2de734d]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.input[data-v-a2de734d]:disabled,.select[data-v-a2de734d]:disabled,.textarea[data-v-a2de734d]:disabled{background:var(--color-bg-tertiary);color:var(--color-text-disabled);cursor:not-allowed}.input.error[data-v-a2de734d],.select.error[data-v-a2de734d],.textarea.error[data-v-a2de734d]{border-color:var(--color-error);box-shadow:0 0 0 3px #ef44441a}.input-sm[data-v-a2de734d]{padding:var(--space-sm) var(--space-md);font-size:var(--text-xs)}.textarea[data-v-a2de734d]{min-height:100px;resize:vertical}.checkbox-label[data-v-a2de734d]{display:flex;align-items:center;gap:var(--space-sm);cursor:pointer;font-weight:400}.checkbox-label input[type=checkbox][data-v-a2de734d],.checkbox-label input[type=radio][data-v-a2de734d]{width:auto;cursor:pointer}.btn[data-v-a2de734d],.btn-primary[data-v-a2de734d],.btn-secondary[data-v-a2de734d],.btn-success[data-v-a2de734d],.btn-danger[data-v-a2de734d],.btn-ghost[data-v-a2de734d]{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-md) var(--space-2xl);border:none;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);font-family:inherit;cursor:pointer;transition:all var(--transition-fast);text-decoration:none;white-space:nowrap;min-height:42px;letter-spacing:.025em}.btn[data-v-a2de734d]:disabled,.btn-primary[data-v-a2de734d]:disabled,.btn-secondary[data-v-a2de734d]:disabled,.btn-success[data-v-a2de734d]:disabled,.btn-danger[data-v-a2de734d]:disabled,.btn-ghost[data-v-a2de734d]:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-primary[data-v-a2de734d]{background:var(--color-primary);color:#fff;border:1px solid var(--color-primary);box-shadow:0 1px 2px #0000000d}.btn-primary[data-v-a2de734d]:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-1px)}.btn-secondary[data-v-a2de734d]{background:var(--color-bg-tertiary);color:var(--color-text-secondary);border:1px solid var(--color-border)}.btn-secondary[data-v-a2de734d]:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-border-dark);color:var(--color-text);transform:translateY(-1px);box-shadow:0 2px 4px #0000000d}.btn-success[data-v-a2de734d]{background:var(--color-success);color:#fff;border:1px solid var(--color-success)}.btn-success[data-v-a2de734d]:hover:not(:disabled){background:var(--color-success-hover);border-color:var(--color-success-hover)}.btn-danger[data-v-a2de734d]{background:var(--color-error);color:#fff;border:1px solid var(--color-error)}.btn-danger[data-v-a2de734d]:hover:not(:disabled){background:var(--color-error-hover);border-color:var(--color-error-hover)}.btn-ghost[data-v-a2de734d]{background:transparent;color:var(--color-text-muted);border:none;padding:var(--space-sm)}.btn-ghost[data-v-a2de734d]:hover:not(:disabled){background:var(--color-bg-hover);color:var(--color-text)}.btn-outline-primary[data-v-a2de734d]{background:var(--color-bg);color:var(--color-primary);border:1px solid var(--color-primary-light)}.btn-outline-primary[data-v-a2de734d]:hover:not(:disabled){background:var(--color-primary-light);border-color:var(--color-primary)}.btn-outline-success[data-v-a2de734d]{background:var(--color-bg);color:var(--color-success);border:1px solid var(--color-success-light)}.btn-outline-success[data-v-a2de734d]:hover:not(:disabled){background:var(--color-success-light);border-color:var(--color-success)}.btn-outline-danger[data-v-a2de734d]{background:var(--color-bg);color:var(--color-error);border:1px solid var(--color-error-light)}.btn-outline-danger[data-v-a2de734d]:hover:not(:disabled){background:var(--color-error-light);border-color:var(--color-error)}.btn-outline-warning[data-v-a2de734d]{background:var(--color-bg);color:var(--color-warning);border:1px solid var(--color-warning-light)}.btn-outline-warning[data-v-a2de734d]:hover:not(:disabled){background:var(--color-warning-light);border-color:var(--color-warning)}.btn-outline[data-v-a2de734d]{background:var(--color-bg);color:var(--color-text-secondary);border:1px solid var(--color-border)}.btn-outline[data-v-a2de734d]:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-border-dark);color:var(--color-text)}.btn-icon[data-v-a2de734d]{width:28px;height:28px;min-height:28px;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text-muted);display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast)}.btn-icon[data-v-a2de734d]:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-border-dark);color:var(--color-text)}.btn-icon[data-v-a2de734d]:disabled{opacity:.5;cursor:not-allowed}.btn-icon-success[data-v-a2de734d]{color:var(--color-success);border-color:var(--color-success-light)}.btn-icon-success[data-v-a2de734d]:hover:not(:disabled){background:var(--color-success-light);border-color:var(--color-success)}.btn-icon-danger[data-v-a2de734d]{color:var(--color-error);border-color:var(--color-error-light)}.btn-icon-danger[data-v-a2de734d]:hover:not(:disabled){background:var(--color-error-light);border-color:var(--color-error)}.btn-icon-primary[data-v-a2de734d]{color:var(--color-primary);border-color:var(--color-primary-light)}.btn-icon-primary[data-v-a2de734d]:hover:not(:disabled){background:var(--color-primary-light);border-color:var(--color-primary)}.btn-icon-lg[data-v-a2de734d]{width:36px;height:36px;min-height:36px;font-size:var(--text-base)}.btn-sm[data-v-a2de734d]{padding:var(--space-sm) var(--space-md);font-size:var(--text-xs);min-height:32px}.btn-lg[data-v-a2de734d]{padding:var(--space-lg) var(--space-xl);font-size:var(--text-base);min-height:48px}.alert[data-v-a2de734d]{padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);margin-bottom:var(--space-lg);border-left:4px solid}.alert-info[data-v-a2de734d]{background:#eff6ff;color:#1e40af;border-left-color:#3b82f6}.alert-success[data-v-a2de734d]{background:#f0fdf4;color:#166534;border-left-color:#22c55e}.alert-warning[data-v-a2de734d]{background:#fffbeb;color:#92400e;border-left-color:#f59e0b}.alert-error[data-v-a2de734d]{background:#fef2f2;color:#b91c1c;border-left-color:#ef4444}.loading-state[data-v-a2de734d]{text-align:center;padding:var(--space-3xl);color:var(--color-text-muted)}.spinner[data-v-a2de734d]{width:32px;height:32px;border:3px solid var(--color-border);border-top:3px solid #3b82f6;border-radius:50%;animation:spin-a2de734d 1s linear infinite}.spinner-sm[data-v-a2de734d]{width:16px;height:16px;border-width:2px}@keyframes modal-fade-in-a2de734d{0%{opacity:0}to{opacity:1}}@keyframes modal-slide-in-a2de734d{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes spin-a2de734d{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.text-center[data-v-a2de734d]{text-align:center}.text-left[data-v-a2de734d]{text-align:left}.text-right[data-v-a2de734d]{text-align:right}.text-muted[data-v-a2de734d]{color:var(--color-text-muted)}.z-1000[data-v-a2de734d]{z-index:1000}.z-1001[data-v-a2de734d]{z-index:1001}.z-1002[data-v-a2de734d]{z-index:1002}.flex[data-v-a2de734d]{display:flex}.flex-col[data-v-a2de734d]{flex-direction:column}.flex-wrap[data-v-a2de734d]{flex-wrap:wrap}.items-center[data-v-a2de734d]{align-items:center}.justify-center[data-v-a2de734d]{justify-content:center}.justify-between[data-v-a2de734d]{justify-content:space-between}.justify-end[data-v-a2de734d]{justify-content:flex-end}.gap-xs[data-v-a2de734d]{gap:var(--space-xs)}.gap-sm[data-v-a2de734d]{gap:var(--space-sm)}.gap-md[data-v-a2de734d]{gap:var(--space-md)}.gap-lg[data-v-a2de734d]{gap:var(--space-lg)}.mb-sm[data-v-a2de734d]{margin-bottom:var(--space-sm)}.mb-md[data-v-a2de734d]{margin-bottom:var(--space-md)}.mb-lg[data-v-a2de734d]{margin-bottom:var(--space-lg)}.mb-xl[data-v-a2de734d]{margin-bottom:var(--space-xl)}.mt-sm[data-v-a2de734d]{margin-top:var(--space-sm)}.mt-md[data-v-a2de734d]{margin-top:var(--space-md)}.mt-lg[data-v-a2de734d]{margin-top:var(--space-lg)}.mt-xl[data-v-a2de734d]{margin-top:var(--space-xl)}.p-sm[data-v-a2de734d]{padding:var(--space-sm)}.p-md[data-v-a2de734d]{padding:var(--space-md)}.p-lg[data-v-a2de734d]{padding:var(--space-lg)}.p-xl[data-v-a2de734d]{padding:var(--space-xl)}.pt-lg[data-v-a2de734d]{padding-top:var(--space-lg)}.border-t[data-v-a2de734d]{border-top:1px solid var(--color-border)}@media(max-width:768px){.modal-container[data-v-a2de734d]{width:95%;max-height:95vh;margin:var(--space-sm)}.modal-header[data-v-a2de734d],.modal-body[data-v-a2de734d]{padding:var(--space-lg)}.modal-footer[data-v-a2de734d]{padding:var(--space-md) var(--space-lg);flex-direction:column;gap:var(--space-sm)}.modal-footer .btn[data-v-a2de734d]{width:100%}.split-pane[data-v-a2de734d]{flex-direction:column}.left-pane[data-v-a2de734d]{width:100%;max-height:200px}.modal-panel-left[data-v-a2de734d]{width:100%;border-right:none;border-bottom:1px solid var(--color-border)}}.providers-container[data-v-4c60214f]{display:flex;flex-direction:column;gap:1.5rem;margin:1.5rem 0;max-height:50vh;overflow-y:auto;padding-right:.5rem}.provider-section[data-v-4c60214f]{border:1px solid #dee2e6;border-radius:8px;overflow:visible;background:#f8f9fa}.provider-header[data-v-4c60214f]{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#e9ecef;border-bottom:1px solid #dee2e6}.provider-header h4[data-v-4c60214f]{margin:0;font-size:1.1rem;font-weight:600}.status-badge[data-v-4c60214f]{padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.status-active[data-v-4c60214f]{background:#d4edda;color:#155724}.status-inactive[data-v-4c60214f]{background:#f8d7da;color:#721c24}.provider-content[data-v-4c60214f]{padding:1rem}.provider-description[data-v-4c60214f]{margin:0 0 1rem;font-size:.9rem;color:#666}.provider-description a[data-v-4c60214f]{color:#06c;text-decoration:none}.provider-description a[data-v-4c60214f]:hover{text-decoration:underline}.provider-actions[data-v-4c60214f]{display:flex;gap:.5rem;margin-top:.5rem}.provider-key-hint[data-v-4c60214f]{margin-top:.5rem;font-size:.85rem;color:#444}.provider-key-hint code[data-v-4c60214f]{padding:.1rem .25rem;background:#fff;border:1px solid #dee2e6;border-radius:4px}.btn-sm[data-v-4c60214f]{padding:.5rem 1rem;font-size:.9rem}.form-group[data-v-4c60214f]{margin-bottom:1rem}.form-group label[data-v-4c60214f]{display:block;margin-bottom:.5rem;font-weight:500;color:#333}.form-input[data-v-4c60214f]{width:100%;padding:.5rem;border:1px solid #ced4da;border-radius:4px;font-size:.9rem}.form-input[data-v-4c60214f]:disabled{background:#e9ecef;cursor:not-allowed}.alert[data-v-4c60214f]{padding:1rem;border-radius:6px;margin:1rem 0}.alert-info[data-v-4c60214f]{background-color:#d1ecf1;border-color:#bee5eb;color:#0c5460}.alert-success[data-v-4c60214f]{background-color:#d4edda;border-color:#c3e6cb;color:#155724}.alert-warning[data-v-4c60214f]{background-color:#fff3cd;border-color:#ffc107;color:#856404}.alert-danger[data-v-4c60214f]{background-color:#f8d7da;border-color:#f5c6cb;color:#721c24}.alert ul[data-v-4c60214f]{margin:.5rem 0 0 1.5rem;padding:0}.alert li[data-v-4c60214f]{margin:.25rem 0}.wolfram-modal[data-v-b31d54a9]{max-width:700px}.script-link[data-v-b31d54a9]{display:inline-block;margin-top:.5rem;padding:.5rem 1rem;background:#e7f1ff;border:1px solid #b6d4fe;border-radius:6px;color:#0c63e4;text-decoration:none;font-weight:500}.script-link[data-v-b31d54a9]:hover{background:#cfe2ff;text-decoration:underline}.divider[data-v-b31d54a9]{height:1px;background:#dee2e6;margin:1.5rem 0}.config-form[data-v-b31d54a9]{margin:1.5rem 0}.form-description[data-v-b31d54a9]{color:#6c757d;margin-bottom:1.5rem}.required[data-v-b31d54a9]{color:#dc3545}.button-row[data-v-b31d54a9]{display:flex;gap:1rem;margin-top:1.5rem}.credential-info[data-v-b31d54a9]{margin-top:.75rem;padding:.5rem;background:#ffffff4d;border-radius:4px;font-family:monospace;font-size:.9em}.credential-info code[data-v-b31d54a9]{background:#0000001a;padding:.2rem .4rem;border-radius:3px}.actions-row[data-v-b31d54a9]{margin-top:1rem}.btn-sm[data-v-b31d54a9]{padding:.375rem .75rem;font-size:.875rem}.test-details[data-v-b31d54a9]{margin-top:.5rem;padding:.5rem;background:#0000000d;border-radius:4px;font-size:.85em;font-family:monospace;word-break:break-all}.benefits-section[data-v-b31d54a9]{margin:1.5rem 0}.benefits-list[data-v-b31d54a9]{list-style:none;padding:0}.benefits-list li[data-v-b31d54a9]{margin:1rem 0;padding-left:1.5rem;position:relative}.benefits-list li[data-v-b31d54a9]:before{content:"✓";position:absolute;left:0;color:#28a745;font-weight:700}.benefits-list strong[data-v-b31d54a9]{display:block;color:#212529;margin-bottom:.25rem}.benefits-list p[data-v-b31d54a9]{margin:0;color:#6c757d;font-size:.9em}.setup-instructions[data-v-b31d54a9]{margin:1.5rem 0;padding:1rem;background-color:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.setup-instructions h4[data-v-b31d54a9]{margin-top:0;margin-bottom:.5rem;color:#495057}.setup-instructions ol[data-v-b31d54a9]{margin-bottom:0;padding-left:1.5rem}.setup-instructions li[data-v-b31d54a9]{margin-bottom:.25rem}.script-container[data-v-b31d54a9]{margin-top:.5rem}.script-code[data-v-b31d54a9]{margin-top:.75rem;max-height:400px;overflow:auto;border:1px solid #444;border-radius:6px;background:#1e1e1e}.script-code pre[data-v-b31d54a9]{margin:0;padding:1rem;background:transparent}.script-code code[data-v-b31d54a9]{font-family:SF Mono,Consolas,Monaco,Courier New,monospace;font-size:.75em;line-height:1.5;color:#d4d4d4;white-space:pre;background:transparent;display:block}.modal-overlay[data-v-795ca354]{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:var(--z-modal-backdrop);padding:var(--space-xl);animation:modal-fade-in-795ca354 .2s ease-out}.modal-container[data-v-795ca354]{background:var(--color-bg);border-radius:var(--radius-xl);position:relative;width:100%;max-width:640px;max-height:calc(100vh - var(--space-4xl));display:flex;flex-direction:column;box-shadow:var(--shadow-xl);z-index:var(--z-modal);animation:modal-slide-in-795ca354 .3s ease-out}.modal-container.modal-sm[data-v-795ca354]{max-width:480px}.modal-container.modal-md[data-v-795ca354]{max-width:800px}.modal-container.modal-lg[data-v-795ca354]{max-width:1000px}.modal-container.modal-xl[data-v-795ca354]{max-width:1200px}.modal-container.modal-full[data-v-795ca354]{max-width:1400px;width:95vw}.max-w-sm[data-v-795ca354]{max-width:480px}.max-w-md[data-v-795ca354]{max-width:640px}.max-w-lg[data-v-795ca354]{max-width:800px}.max-w-xl[data-v-795ca354]{max-width:1000px}.modal-header[data-v-795ca354]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-lg) var(--space-xl);border-bottom:1px solid var(--color-border);background:linear-gradient(135deg,#1e40af,#3b82f6);color:#fff;border-radius:var(--radius-xl) var(--radius-xl) 0 0;flex-shrink:0}.modal-header h2[data-v-795ca354]{margin:0;font-size:var(--text-lg);font-weight:var(--font-weight-semibold);color:#fff}.modal-header .close-btn[data-v-795ca354]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-lg);color:#fff;font-size:1.25rem;cursor:pointer;transition:all var(--transition-fast)}.modal-header .close-btn[data-v-795ca354]:hover:not(:disabled){background:#fff3;border-color:#ffffff4d;transform:scale(1.05)}.modal-header .close-btn[data-v-795ca354]:disabled{opacity:.5;cursor:not-allowed;transform:none}.modal-body[data-v-795ca354]{flex:1;padding:var(--space-xl);overflow-y:auto;background:#fafbfc}.modal-body.padded-lg[data-v-795ca354]{padding:var(--space-2xl)}.modal-footer[data-v-795ca354]{display:flex;justify-content:flex-end;align-items:center;gap:var(--space-md);padding:var(--space-lg) var(--space-xl);border-top:1px solid var(--color-border);background:#fff;border-radius:0 0 var(--radius-xl) var(--radius-xl);flex-shrink:0}.modal-footer .unsaved-indicator[data-v-795ca354]{margin-right:auto;color:var(--color-warning);font-size:var(--text-sm)}.settings-section[data-v-795ca354],.modal-section[data-v-795ca354]{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);margin-bottom:var(--space-xl)}.settings-section[data-v-795ca354]:last-child,.modal-section[data-v-795ca354]:last-child{margin-bottom:0}.settings-section h3[data-v-795ca354],.modal-section h3[data-v-795ca354]{margin:0 0 var(--space-lg) 0;font-size:var(--text-base);font-weight:var(--font-weight-semibold);color:var(--color-text);padding-bottom:var(--space-sm);border-bottom:3px solid #3b82f6}.modal-section-help[data-v-795ca354],.section-help[data-v-795ca354]{margin-bottom:var(--space-lg);color:var(--color-text-muted);font-size:var(--text-sm)}.modal-body.two-panel[data-v-795ca354]{display:flex;padding:0}.modal-panel-left[data-v-795ca354]{width:320px;flex-shrink:0;padding:var(--space-xl);border-right:1px solid var(--color-border);background:var(--color-bg-secondary);overflow-y:auto}.modal-panel-right[data-v-795ca354]{flex:1;padding:var(--space-xl);overflow-y:auto}.split-pane[data-v-795ca354]{display:flex;gap:var(--space-lg);height:100%;min-height:400px}.left-pane[data-v-795ca354]{width:300px;flex-shrink:0;border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;flex-direction:column;background:#fff}.right-pane[data-v-795ca354]{flex:1;border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;flex-direction:column;background:#fff}.pane-header[data-v-795ca354]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary)}.pane-header h3[data-v-795ca354]{margin:0;font-size:var(--text-base);font-weight:var(--font-weight-semibold)}.form-group[data-v-795ca354]{margin-bottom:var(--space-lg)}.form-group[data-v-795ca354]:last-child{margin-bottom:0}.form-label[data-v-795ca354]{display:block;margin-bottom:var(--space-sm);font-weight:var(--font-weight-medium);color:var(--color-text);font-size:var(--text-sm)}.form-row[data-v-795ca354]{display:flex;gap:var(--space-sm);align-items:center}.form-row>.input[data-v-795ca354],.form-row>.select[data-v-795ca354]{flex:1}.form-error[data-v-795ca354]{color:var(--color-error);font-size:var(--text-sm);margin-top:var(--space-xs)}.form-help[data-v-795ca354],.field-help[data-v-795ca354]{color:var(--color-text-muted);font-size:var(--text-sm);margin-top:var(--space-xs)}.input[data-v-795ca354],.select[data-v-795ca354],.textarea[data-v-795ca354]{width:100%;padding:var(--space-md) var(--space-lg);border:2px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-sm);font-family:inherit;background:#fff;color:var(--color-text);transition:all var(--transition-fast)}.input[data-v-795ca354]:focus,.select[data-v-795ca354]:focus,.textarea[data-v-795ca354]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.input[data-v-795ca354]:disabled,.select[data-v-795ca354]:disabled,.textarea[data-v-795ca354]:disabled{background:var(--color-bg-tertiary);color:var(--color-text-disabled);cursor:not-allowed}.input.error[data-v-795ca354],.select.error[data-v-795ca354],.textarea.error[data-v-795ca354]{border-color:var(--color-error);box-shadow:0 0 0 3px #ef44441a}.input-sm[data-v-795ca354]{padding:var(--space-sm) var(--space-md);font-size:var(--text-xs)}.textarea[data-v-795ca354]{min-height:100px;resize:vertical}.checkbox-label[data-v-795ca354]{display:flex;align-items:center;gap:var(--space-sm);cursor:pointer;font-weight:400}.checkbox-label input[type=checkbox][data-v-795ca354],.checkbox-label input[type=radio][data-v-795ca354]{width:auto;cursor:pointer}.btn[data-v-795ca354],.btn-primary[data-v-795ca354],.btn-secondary[data-v-795ca354],.btn-success[data-v-795ca354],.btn-danger[data-v-795ca354],.btn-ghost[data-v-795ca354]{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-md) var(--space-2xl);border:none;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);font-family:inherit;cursor:pointer;transition:all var(--transition-fast);text-decoration:none;white-space:nowrap;min-height:42px;letter-spacing:.025em}.btn[data-v-795ca354]:disabled,.btn-primary[data-v-795ca354]:disabled,.btn-secondary[data-v-795ca354]:disabled,.btn-success[data-v-795ca354]:disabled,.btn-danger[data-v-795ca354]:disabled,.btn-ghost[data-v-795ca354]:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-primary[data-v-795ca354]{background:var(--color-primary);color:#fff;border:1px solid var(--color-primary);box-shadow:0 1px 2px #0000000d}.btn-primary[data-v-795ca354]:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-1px)}.btn-secondary[data-v-795ca354]{background:var(--color-bg-tertiary);color:var(--color-text-secondary);border:1px solid var(--color-border)}.btn-secondary[data-v-795ca354]:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-border-dark);color:var(--color-text);transform:translateY(-1px);box-shadow:0 2px 4px #0000000d}.btn-success[data-v-795ca354]{background:var(--color-success);color:#fff;border:1px solid var(--color-success)}.btn-success[data-v-795ca354]:hover:not(:disabled){background:var(--color-success-hover);border-color:var(--color-success-hover)}.btn-danger[data-v-795ca354]{background:var(--color-error);color:#fff;border:1px solid var(--color-error)}.btn-danger[data-v-795ca354]:hover:not(:disabled){background:var(--color-error-hover);border-color:var(--color-error-hover)}.btn-ghost[data-v-795ca354]{background:transparent;color:var(--color-text-muted);border:none;padding:var(--space-sm)}.btn-ghost[data-v-795ca354]:hover:not(:disabled){background:var(--color-bg-hover);color:var(--color-text)}.btn-outline-primary[data-v-795ca354]{background:var(--color-bg);color:var(--color-primary);border:1px solid var(--color-primary-light)}.btn-outline-primary[data-v-795ca354]:hover:not(:disabled){background:var(--color-primary-light);border-color:var(--color-primary)}.btn-outline-success[data-v-795ca354]{background:var(--color-bg);color:var(--color-success);border:1px solid var(--color-success-light)}.btn-outline-success[data-v-795ca354]:hover:not(:disabled){background:var(--color-success-light);border-color:var(--color-success)}.btn-outline-danger[data-v-795ca354]{background:var(--color-bg);color:var(--color-error);border:1px solid var(--color-error-light)}.btn-outline-danger[data-v-795ca354]:hover:not(:disabled){background:var(--color-error-light);border-color:var(--color-error)}.btn-outline-warning[data-v-795ca354]{background:var(--color-bg);color:var(--color-warning);border:1px solid var(--color-warning-light)}.btn-outline-warning[data-v-795ca354]:hover:not(:disabled){background:var(--color-warning-light);border-color:var(--color-warning)}.btn-outline[data-v-795ca354]{background:var(--color-bg);color:var(--color-text-secondary);border:1px solid var(--color-border)}.btn-outline[data-v-795ca354]:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-border-dark);color:var(--color-text)}.btn-icon[data-v-795ca354]{width:28px;height:28px;min-height:28px;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text-muted);display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast)}.btn-icon[data-v-795ca354]:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-border-dark);color:var(--color-text)}.btn-icon[data-v-795ca354]:disabled{opacity:.5;cursor:not-allowed}.btn-icon-success[data-v-795ca354]{color:var(--color-success);border-color:var(--color-success-light)}.btn-icon-success[data-v-795ca354]:hover:not(:disabled){background:var(--color-success-light);border-color:var(--color-success)}.btn-icon-danger[data-v-795ca354]{color:var(--color-error);border-color:var(--color-error-light)}.btn-icon-danger[data-v-795ca354]:hover:not(:disabled){background:var(--color-error-light);border-color:var(--color-error)}.btn-icon-primary[data-v-795ca354]{color:var(--color-primary);border-color:var(--color-primary-light)}.btn-icon-primary[data-v-795ca354]:hover:not(:disabled){background:var(--color-primary-light);border-color:var(--color-primary)}.btn-icon-lg[data-v-795ca354]{width:36px;height:36px;min-height:36px;font-size:var(--text-base)}.btn-sm[data-v-795ca354]{padding:var(--space-sm) var(--space-md);font-size:var(--text-xs);min-height:32px}.btn-lg[data-v-795ca354]{padding:var(--space-lg) var(--space-xl);font-size:var(--text-base);min-height:48px}.alert[data-v-795ca354]{padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);margin-bottom:var(--space-lg);border-left:4px solid}.alert-info[data-v-795ca354]{background:#eff6ff;color:#1e40af;border-left-color:#3b82f6}.alert-success[data-v-795ca354]{background:#f0fdf4;color:#166534;border-left-color:#22c55e}.alert-warning[data-v-795ca354]{background:#fffbeb;color:#92400e;border-left-color:#f59e0b}.alert-error[data-v-795ca354]{background:#fef2f2;color:#b91c1c;border-left-color:#ef4444}.loading-state[data-v-795ca354]{text-align:center;padding:var(--space-3xl);color:var(--color-text-muted)}.spinner[data-v-795ca354]{width:32px;height:32px;border:3px solid var(--color-border);border-top:3px solid #3b82f6;border-radius:50%;animation:spin-795ca354 1s linear infinite}.spinner-sm[data-v-795ca354]{width:16px;height:16px;border-width:2px}@keyframes modal-fade-in-795ca354{0%{opacity:0}to{opacity:1}}@keyframes modal-slide-in-795ca354{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes spin-795ca354{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.text-center[data-v-795ca354]{text-align:center}.text-left[data-v-795ca354]{text-align:left}.text-right[data-v-795ca354]{text-align:right}.text-muted[data-v-795ca354]{color:var(--color-text-muted)}.z-1000[data-v-795ca354]{z-index:1000}.z-1001[data-v-795ca354]{z-index:1001}.z-1002[data-v-795ca354]{z-index:1002}.flex[data-v-795ca354]{display:flex}.flex-col[data-v-795ca354]{flex-direction:column}.flex-wrap[data-v-795ca354]{flex-wrap:wrap}.items-center[data-v-795ca354]{align-items:center}.justify-center[data-v-795ca354]{justify-content:center}.justify-between[data-v-795ca354]{justify-content:space-between}.justify-end[data-v-795ca354]{justify-content:flex-end}.gap-xs[data-v-795ca354]{gap:var(--space-xs)}.gap-sm[data-v-795ca354]{gap:var(--space-sm)}.gap-md[data-v-795ca354]{gap:var(--space-md)}.gap-lg[data-v-795ca354]{gap:var(--space-lg)}.mb-sm[data-v-795ca354]{margin-bottom:var(--space-sm)}.mb-md[data-v-795ca354]{margin-bottom:var(--space-md)}.mb-lg[data-v-795ca354]{margin-bottom:var(--space-lg)}.mb-xl[data-v-795ca354]{margin-bottom:var(--space-xl)}.mt-sm[data-v-795ca354]{margin-top:var(--space-sm)}.mt-md[data-v-795ca354]{margin-top:var(--space-md)}.mt-lg[data-v-795ca354]{margin-top:var(--space-lg)}.mt-xl[data-v-795ca354]{margin-top:var(--space-xl)}.p-sm[data-v-795ca354]{padding:var(--space-sm)}.p-md[data-v-795ca354]{padding:var(--space-md)}.p-lg[data-v-795ca354]{padding:var(--space-lg)}.p-xl[data-v-795ca354]{padding:var(--space-xl)}.pt-lg[data-v-795ca354]{padding-top:var(--space-lg)}.border-t[data-v-795ca354]{border-top:1px solid var(--color-border)}@media(max-width:768px){.modal-container[data-v-795ca354]{width:95%;max-height:95vh;margin:var(--space-sm)}.modal-header[data-v-795ca354],.modal-body[data-v-795ca354]{padding:var(--space-lg)}.modal-footer[data-v-795ca354]{padding:var(--space-md) var(--space-lg);flex-direction:column;gap:var(--space-sm)}.modal-footer .btn[data-v-795ca354]{width:100%}.split-pane[data-v-795ca354]{flex-direction:column}.left-pane[data-v-795ca354]{width:100%;max-height:200px}.modal-panel-left[data-v-795ca354]{width:100%;border-right:none;border-bottom:1px solid var(--color-border)}}
