*{margin:0;padding:0;box-sizing:border-box}:root{--color-primary: #6264A7;--color-primary-hover: #4B4D94;--color-primary-pressed: #3B3D7A;--color-background: #F3F2F1;--color-background-alt: #EDEBE9;--color-surface: #FFFFFF;--color-surface-hover: #F3F2F1;--color-foreground: #323130;--color-foreground-secondary: #605E5C;--color-foreground-tertiary: #8A8886;--color-border: #EDEBE9;--color-border-strong: #E1DFDD;--color-orange-primary: var(--color-primary);--color-black: var(--color-foreground);--color-dark-gray: var(--color-foreground-secondary);--color-medium-gray: var(--color-foreground-tertiary);--color-light-gray: var(--color-border);--color-white: var(--color-surface);--color-green: #107C10;--color-purple: var(--color-primary);--color-blue: #0078D4;--color-success: #107C10;--color-error: #D13438;--color-warning: #FFB900;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--shadow-sm: 0 1.6px 3.6px 0 rgba(0, 0, 0, .132), 0 .3px .9px 0 rgba(0, 0, 0, .108);--shadow-md: 0 3.2px 7.2px 0 rgba(0, 0, 0, .132), 0 .6px 1.8px 0 rgba(0, 0, 0, .108)}body{font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-background);color:var(--color-foreground);font-size:14px;line-height:1.5}h1,h2,h3,h4,h5,h6{color:var(--color-black);font-weight:600}h1{font-size:32px;margin-bottom:var(--spacing-lg)}h2{font-size:24px;margin-bottom:var(--spacing-md);display:flex;align-items:center;gap:var(--spacing-sm)}h3{font-size:18px;margin-bottom:var(--spacing-sm)}button{font-family:inherit;cursor:pointer;border:none;outline:none;transition:all .2s ease;display:flex;align-items:center;gap:var(--spacing-sm)}button:disabled{opacity:.5;cursor:not-allowed}input,textarea,select{font-family:inherit;font-size:inherit;border:1px solid var(--color-light-gray);border-radius:var(--radius-sm);padding:12px 16px;outline:none;transition:border-color .2s ease}input:focus,textarea:focus,select:focus{border-color:var(--color-primary)}svg{flex-shrink:0}.spinner-icon{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.container{max-width:1400px;margin:0 auto;padding:0 var(--spacing-lg)}.card{background:var(--color-white);border-radius:var(--radius-md);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.btn-primary{background:var(--color-primary);color:var(--color-surface);padding:8px 20px;border-radius:var(--radius-sm);font-weight:600;font-size:14px}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-secondary{background:var(--color-black);color:var(--color-white);padding:12px 24px;border-radius:var(--radius-sm);font-weight:600}.btn-secondary:hover:not(:disabled){filter:brightness(1.2)}.btn-ghost{background:transparent;color:var(--color-dark-gray);padding:12px 24px;border:1px solid var(--color-light-gray);border-radius:var(--radius-sm)}.btn-ghost:hover:not(:disabled){background:var(--color-background)}.btn-icon{background:transparent;color:var(--color-medium-gray);padding:8px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}.btn-icon:hover:not(:disabled){background:var(--color-background);color:var(--color-black)}.btn-icon.delete{color:var(--color-error)}.btn-icon.delete:hover:not(:disabled){background:#f443361a}.App{position:relative;min-height:100vh;background-color:var(--color-background)}.App:after{content:"";position:absolute;bottom:20px;right:-70px;width:280px;height:320px;background-image:url(/abm-mascot.png);background-repeat:no-repeat;background-size:contain;transform:scaleX(-1);pointer-events:none;z-index:0}.App>*{position:relative;z-index:1}.tab-navigation{display:flex;gap:0;background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:0;margin-bottom:0}.tab-button{flex:1;padding:12px 24px;font-size:14px;font-weight:600;background:var(--color-surface);border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .2s ease;color:var(--color-foreground-secondary)}.tab-button:hover{background:var(--color-surface-hover);color:var(--color-foreground)}.tab-button.active{background:var(--color-surface);color:var(--color-primary);border-bottom-color:var(--color-primary)}.phase-a{background:var(--color-surface);border-radius:var(--radius-md);padding:20px;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);overflow-y:auto;max-height:calc(100vh - 200px);position:sticky;top:20px}.phase-a .phase-header{margin-bottom:25px;padding-bottom:15px;border-bottom:1px solid var(--color-border)}.phase-a .phase-header h2{font-size:20px;color:var(--color-foreground);margin-bottom:8px}.phase-a .phase-header p{font-size:14px;color:var(--color-foreground-secondary)}.learn-more-link{display:inline;background:none;border:none;padding:0;font-size:inherit;font-family:inherit;color:var(--color-primary);text-decoration:underline;cursor:pointer}.learn-more-link:hover{color:var(--color-primary-hover, #ff7a28)}.help-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.help-modal{background:var(--color-white);border-radius:8px;box-shadow:0 20px 60px #0000004d;max-width:560px;width:100%;max-height:85vh;display:flex;flex-direction:column}.help-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #eee}.help-modal-header h2{margin:0;font-size:18px;color:var(--color-foreground)}.help-modal-close{background:none;border:none;font-size:24px;line-height:1;color:#666;cursor:pointer;padding:0 4px}.help-modal-close:hover{color:var(--color-foreground)}.help-modal-body{flex:1;overflow-y:auto;padding:20px}.help-section{margin-bottom:24px}.help-section h3{font-size:16px;color:var(--color-primary);margin:0 0 6px}.help-section-desc{font-size:13px;color:#666;margin:0 0 12px}.help-tip{margin-bottom:14px}.help-tip h4{font-size:14px;font-weight:600;color:var(--color-foreground);margin:0 0 4px}.help-tip p{font-size:13px;color:#555;margin:0;line-height:1.5}.help-general{margin-top:20px;padding-top:16px;border-top:1px solid #eee}.help-general h3{font-size:16px;color:var(--color-primary);margin:0 0 10px}.help-general ul{margin:0;padding-left:20px;font-size:13px;color:#555;line-height:1.6}.document-section{margin-bottom:30px;padding-bottom:25px;border-bottom:1px solid #eee}.document-section:last-of-type{border-bottom:none}.document-section h3{font-size:18px;color:var(--color-primary);margin-bottom:8px}.doc-description{font-size:13px;color:#888;margin-bottom:15px}.input-type-selector{display:flex;gap:8px;margin-bottom:15px}.type-btn{flex:1;padding:10px;font-size:13px;background:#f5f5f5;border:2px solid #ddd;border-radius:6px;cursor:pointer;transition:all .2s}.type-btn:hover{background:#e8e8e8}.type-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.doc-textarea{width:100%;padding:12px;border:2px solid #ddd;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;transition:border-color .2s;min-height:80px}.doc-textarea:focus{outline:none;border-color:var(--color-primary)}.file-upload-zone{border:2px dashed #ddd;border-radius:6px;padding:30px;text-align:center;transition:all .2s}.file-upload-zone:hover{border-color:var(--color-primary);background:#fff8f4}.file-upload-label{cursor:pointer;color:#666;font-size:14px}.doc-url-input{width:100%;padding:12px;border:2px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .2s}.doc-url-input:focus{outline:none;border-color:var(--color-primary)}.submit-button{width:100%;padding:15px;font-size:16px;font-weight:600;background:var(--color-primary);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .2s;margin-top:20px}.submit-button:hover:not(:disabled){background:#ff7a28;transform:translateY(-1px);box-shadow:0 4px 12px #ff8c424d}.submit-button:disabled{background:#ccc;cursor:not-allowed}.demo-button{margin-top:12px;width:100%;padding:10px 16px;font-size:13px;font-weight:600;color:var(--color-primary);background:#fff8f4;border:2px dashed var(--color-primary);border-radius:6px;cursor:pointer;transition:all .2s}.demo-button:hover:not(:disabled){background:var(--color-primary);color:#fff;border-style:solid}.demo-button:disabled{opacity:.5;cursor:not-allowed}.phase-b{background:var(--color-surface);border-radius:var(--radius-md);padding:20px;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);overflow-y:auto;display:flex;flex-direction:column;gap:25px}.scenarios-section h3,.conversation-section h3,.user-input-section h3{font-size:18px;color:#333;margin-bottom:15px}.scenarios-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.scenario-card{padding:12px;background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s}.scenario-card:hover{background:var(--color-surface-hover);border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.scenario-card.selected{background:var(--color-primary);color:var(--color-surface);border-color:var(--color-primary)}.scenario-number{font-size:11px;font-weight:600;opacity:.7;margin-bottom:5px}.scenario-title{font-size:13px;font-weight:600;margin-bottom:6px}.scenario-description{font-size:11px;opacity:.8;line-height:1.4}.conversation-section{background:#f8f9fa;border-radius:12px;overflow:hidden;border:1px solid #e0e0e0;display:flex;flex-direction:column}.conversation-section h3{padding:15px 20px;background:#fff;border-bottom:1px solid #e0e0e0;margin:0;font-size:16px}.imessage-chat{display:flex;flex-direction:column}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:#fff;border-bottom:1px solid #e0e0e0}.chat-title{font-size:14px;font-weight:600;color:#333}.chat-messages{padding:20px;overflow-y:auto;max-height:500px;display:flex;flex-direction:column;gap:12px;background:#f8f9fa}.chat-bubble{display:flex;flex-direction:column;max-width:75%;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-bubble.user{align-self:flex-end;align-items:flex-end}.chat-bubble.agent{align-self:flex-start;align-items:flex-start}.bubble-content{padding:12px 16px;border-radius:18px;font-size:14px;line-height:1.5;word-wrap:break-word;box-shadow:0 1px 2px #0000001a}.chat-bubble.user .bubble-content{background:#007aff;color:#fff;border-bottom-right-radius:4px}.chat-bubble.agent .bubble-content{background:#e5e5ea;color:#000;border-bottom-left-radius:4px}.bubble-time{font-size:11px;color:#8e8e93;margin-top:4px;padding:0 8px}.no-conversation{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:#999}.no-conversation .empty-icon{font-size:48px;margin-bottom:15px}.no-conversation p{font-size:14px;max-width:250px}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.user-input-section{border-top:2px solid #f0f0f0;padding-top:20px}.input-container{display:flex;flex-direction:column;gap:10px}.user-input-textarea{width:100%;padding:12px;border:2px solid #ddd;border-radius:8px;font-size:14px;font-family:inherit;resize:vertical;transition:border-color .2s}.user-input-textarea:focus{outline:none;border-color:var(--color-primary)}.input-actions{display:flex;gap:10px;justify-content:flex-end}.voice-btn{padding:10px 20px;background:#f5f5f5;border:2px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s}.voice-btn:hover{background:#e8e8e8}.voice-btn.recording{background:#f44;color:#fff;border-color:#f44;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.send-btn{padding:10px 30px;background:var(--color-primary);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s}.send-btn:hover:not(:disabled){background:#ff7a28;transform:translateY(-1px)}.send-btn:disabled{background:#ccc;cursor:not-allowed}.skeleton-chat{padding:20px;display:flex;flex-direction:column;gap:16px}.skeleton-bubble{display:flex;flex-direction:column;gap:8px;max-width:75%}.skeleton-bubble.user{align-self:flex-end}.skeleton-bubble.agent{align-self:flex-start}.skeleton-line{height:14px;border-radius:7px;background:linear-gradient(90deg,#e0e0e0 25%,#f0f0f0,#e0e0e0 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}.skeleton-bubble.user .skeleton-line{background:linear-gradient(90deg,#b8d4f0 25%,#d0e4f8,#b8d4f0 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}.skeleton-line.wide{width:90%}.skeleton-line.medium{width:65%}.skeleton-line.narrow{width:40%}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.loading-badge{display:inline-block;margin-left:10px;padding:2px 10px;font-size:11px;font-weight:600;color:var(--color-primary);background:#fff5ee;border-radius:10px;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.scenario-card.skeleton-card{pointer-events:none;background:#f4f4f4;border-color:#eee}.dial-control{margin-bottom:4px}.dial-row{display:flex;align-items:center;gap:12px}.dial-svg{cursor:grab;touch-action:none;flex-shrink:0;color:var(--color-primary);filter:drop-shadow(0 1px 2px rgba(0,0,0,.08));transition:filter .15s}.dial-svg:hover{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.dial-svg:active{cursor:grabbing}.dial-slider-col{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.dial-range-labels{display:flex;align-items:center;gap:8px}.dial-range-labels .dial-slider{flex:1}.dial-low,.dial-high{font-size:10px;color:#888;min-width:28px}.dial-low{text-align:left}.dial-high{text-align:right}.dial-label{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#555;font-weight:500}.dial-value{font-size:12px;color:var(--color-primary);font-weight:600}.dial-slider{width:100%;height:6px;border-radius:3px;background:#e0e0e0;outline:none;-webkit-appearance:none}.dial-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:var(--color-primary);cursor:pointer;transition:all .15s;box-shadow:0 1px 3px #0003}.dial-slider::-webkit-slider-thumb:hover{transform:scale(1.1);box-shadow:0 0 0 4px #6264a733}.dial-slider::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--color-primary);cursor:pointer;border:none}.phase-c{background:var(--color-surface);border-radius:var(--radius-md);padding:20px;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);overflow-y:auto;max-height:calc(100vh - 200px);position:sticky;top:20px}.phase-header{margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid var(--color-border)}.phase-header h2{font-size:20px;color:var(--color-foreground);margin-bottom:8px}.phase-header p{font-size:14px;color:var(--color-foreground-secondary)}.empty-state{text-align:center;padding:60px 20px;color:#999}.empty-icon{font-size:64px;margin-bottom:20px}.controls-list{display:flex;flex-direction:column;gap:8px}.control-group.compact{margin-bottom:8px}.control-label{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:var(--color-foreground-secondary);margin-bottom:6px;font-weight:500}.control-value{font-size:12px;color:var(--color-primary);font-weight:600}.control-select{width:100%;padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;background:var(--color-surface);cursor:pointer;transition:border-color .2s}.control-select:focus{outline:none;border-color:var(--color-primary)}.export-button.compact{width:100%;padding:10px;font-size:13px;font-weight:600;background:var(--color-primary);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .2s;margin-top:10px}.export-button.compact:hover:not(:disabled){background:var(--color-primary-hover)}.export-button.compact:disabled{background:var(--color-border);cursor:not-allowed}.processing-status{background:#fff;border-radius:12px;padding:30px;box-shadow:0 4px 12px #0000001a;max-width:600px;margin:40px auto}.status-header{text-align:center;margin-bottom:30px}.status-header h3{font-size:24px;color:#333;margin-bottom:10px}.status-message{font-size:14px;color:#666;margin:0}.status-steps{display:flex;flex-direction:column;gap:0}.status-step{display:flex;align-items:flex-start;gap:15px;position:relative;padding:15px 0}.step-icon{font-size:32px;min-width:40px;text-align:center;opacity:.3;transition:all .3s}.status-step.active .step-icon,.status-step.complete .step-icon{opacity:1}.status-step.active .step-icon{animation:bounce 1s infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.step-content{flex:1}.step-label{font-size:16px;font-weight:600;color:#999;transition:color .3s}.status-step.active .step-label{color:var(--color-primary)}.status-step.complete .step-label{color:#4caf50}.step-progress{margin-top:8px}.progress-bar{height:4px;background:#e0e0e0;border-radius:2px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-hover));animation:progress 2s ease-in-out infinite}@keyframes progress{0%{width:0%}50%{width:70%}to{width:100%}}.step-check{margin-top:5px;color:#4caf50;font-size:18px;font-weight:700}.step-connector{position:absolute;left:19px;top:55px;width:2px;height:calc(100% - 10px);background:#e0e0e0;transition:background .3s}.step-connector.complete{background:#4caf50}.status-error{margin-top:20px;padding:15px;background:#fff3f3;border:2px solid #ff4444;border-radius:8px;display:flex;gap:10px;align-items:flex-start}.error-icon{font-size:24px}.error-message{flex:1;font-size:14px;color:#d32f2f}.error-message strong{display:block;margin-bottom:5px}.status-details{margin-top:20px;padding:15px;background:#f8f9fa;border-radius:8px}.status-details summary{cursor:pointer;font-size:13px;color:#666;font-weight:600}.status-details pre{margin-top:10px;font-size:11px;color:#333;overflow-x:auto}.agent-behavior-maker{padding:20px;max-width:1800px;margin:0 auto}.abm-header{text-align:center;margin-bottom:30px}.abm-header h1{font-size:24px;color:var(--color-foreground);margin-bottom:8px}.abm-header p{font-size:14px;color:var(--color-foreground-secondary)}.abm-container{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:20px;min-height:600px;align-items:start}@media (max-width: 1400px){.abm-container{grid-template-columns:1fr;gap:30px}}
