*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f0f2f5;color:#333;font-size:14px}.app{height:100vh;display:flex;flex-direction:column;padding:8px;gap:8px}.status-toolbar{display:flex;justify-content:space-between;align-items:center;padding:6px 14px;background:#1a1a2e;color:#ccc;border-radius:6px;font-size:12px;flex-shrink:0}.toolbar-left{display:flex;align-items:center;gap:8px}.toolbar-right{display:flex;align-items:center;gap:6px}.status-dot{width:8px;height:8px;border-radius:50%;background:#666}.status-dot.connected{background:#4caf50;box-shadow:0 0 4px #4caf50}.status-dot.error{background:#f44336}.toolbar-status{color:#aaa}.toolbar-item{color:#89a;font-variant-numeric:tabular-nums}.toolbar-sep{width:1px;height:12px;background:#444}.toolbar-metric{display:flex;align-items:center;gap:3px}.toolbar-metric-label{color:#667;font-size:10px;text-transform:uppercase;letter-spacing:.3px}.toolbar-metric-value{color:#9ab;font-variant-numeric:tabular-nums}.toolbar-metric-count{color:#667;font-size:10px;margin-left:1px}.toolbar-timer{color:#9ab;font-variant-numeric:tabular-nums;font-weight:500}.toolbar-ended{color:#f5b731}.toolbar-running{color:#64b5f6;animation:pulse 1s infinite}.status-dot.ended{background:#f5b731;box-shadow:0 0 4px #f5b731}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.main-layout{flex:1;display:flex;gap:8px;min-height:0}.transcript-panel{width:320px;min-width:280px;display:flex;flex-direction:column;background:#fff;border-radius:6px;border:1px solid #ddd;overflow:hidden}.panel-header{padding:8px 12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#666;background:#fafafa;border-bottom:1px solid #eee;flex-shrink:0}.transcript-scroll{flex:1;overflow-y:auto;padding:8px 10px;line-height:1.5}.transcript-line{padding:1px 0;font-size:12px}.transcript-line.partial{opacity:.5}.transcript-line .time{color:#bbb;font-size:10px;margin-right:4px;font-variant-numeric:tabular-nums}.transcript-line .speaker{font-weight:700;margin-right:2px;font-size:11px}.transcript-line .speaker.customer{color:#1976d2}.transcript-line .speaker.agent{color:#7b1fa2}.transcript-line .text{color:#333}.genai-marker{display:flex;align-items:center;gap:6px;margin:4px 0 3px;opacity:.45}.genai-marker:before,.genai-marker:after{content:"";flex:1;height:1px;background:#b0bec5}.genai-marker-label{font-size:9px;color:#90a4ae;font-weight:500;letter-spacing:.3px;white-space:nowrap}.form-panel{flex:1;display:flex;flex-direction:column;background:#fff;border-radius:6px;border:1px solid #ddd;overflow:hidden}.form-content{flex:1;padding:16px 20px;display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:4px}.form-group label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:#888}.form-group input,.form-group textarea{padding:8px 10px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit;color:#222;background:#fafafa;transition:border-color .2s;resize:none}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#90caf9;background:#fff}.form-group input[readonly],.form-group textarea[readonly]{cursor:default}.form-group input::placeholder,.form-group textarea::placeholder{color:#ccc;font-style:italic}.status-message{text-align:center;padding:20px 8px;color:#bbb;font-style:italic;font-size:12px}.template-selection-content{flex:1;padding:16px 20px;display:flex;flex-direction:column;gap:16px;overflow-y:auto}.ts-card{background:#f6f8fc;border:1px solid #e4e8f0;border-radius:8px;padding:20px 24px;display:flex;flex-direction:column;align-items:center;gap:14px}.ts-card-title{font-size:16px;font-weight:600;color:#3a4a6b;margin:0}.ts-select{width:100%;max-width:420px;padding:10px 32px 10px 14px;border:1px solid #ccd2de;border-radius:6px;font-size:14px;font-family:inherit;color:#333;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23666' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 12px center;cursor:pointer;appearance:none}.ts-select:focus{outline:none;border-color:#7ba0d6;box-shadow:0 0 0 2px #7ba0d633}.ts-select option:disabled{color:#bbb}.ts-btn{padding:10px 28px;border-radius:6px;font-size:14px;font-family:inherit;font-weight:500;cursor:pointer;border:1px solid #bcc4d4;transition:all .15s ease}.ts-btn:disabled{opacity:.5;cursor:not-allowed}.ts-btn-primary{background:#e8edf6;color:#3a4a6b;border-color:#a8b4cc}.ts-btn-primary:not(:disabled):hover{background:#dce3f0;border-color:#8a9abf}.ts-btn-secondary{background:#f0f2f5;color:#555;border-color:#ccd2de}.ts-btn-secondary:not(:disabled):hover{background:#e4e8f0}.ts-summary-box{width:100%;max-width:580px;padding:12px 14px;border:1px solid #ccd2de;border-radius:6px;font-size:13px;font-family:inherit;line-height:1.5;color:#333;background:#fff;resize:vertical;min-height:140px}.ts-summary-box:focus{outline:none;border-color:#7ba0d6}.ts-error{color:#c0392b;font-size:13px;text-align:center}.ts-divider{width:100%;height:1px;background:#dde2ec;margin:2px 0}.ts-rating-card{gap:12px}.star-rating-row{display:flex;align-items:center;gap:12px}.star-rating-label{font-size:13px;font-weight:600;color:#555;min-width:140px;text-align:right}.star-rating-stars{display:flex;align-items:center;gap:2px}.star-btn{width:24px;height:24px;border:none;background:none;cursor:pointer;padding:0;position:relative}.star-btn:before{content:"";display:block;width:20px;height:20px;position:absolute;top:2px;left:2px;background:#d0d5de;clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);transition:background .1s}.star-btn.filled:before{background:#f5b731}.star-btn:hover:before{background:#f0c75e}.ts-comment-wrapper{width:100%;max-width:420px;max-height:0;overflow:hidden;opacity:0;transition:max-height .3s ease,opacity .3s ease,margin .3s ease;margin:0}.ts-comment-wrapper.visible{max-height:160px;opacity:1;margin:4px 0}.ts-comment-label{display:block;font-size:12px;font-weight:600;color:#888;margin-bottom:6px;text-transform:uppercase;letter-spacing:.3px}.ts-comment-box{width:100%;padding:10px 12px;border:1px solid #e0c36a;border-radius:6px;font-size:13px;font-family:inherit;color:#333;background:#fffdf3;resize:none}.ts-comment-box:focus{outline:none;border-color:#d4a72c;box-shadow:0 0 0 2px #d4a72c26}.ts-card-disabled{opacity:.45;pointer-events:none}.star-rating-disabled .star-btn{cursor:default}.ts-btn i{margin-right:6px}.field-mandatory-empty{border-color:#e57373!important;background-color:#fff0f0!important}.field-mandatory-empty-group select{border-color:#e57373!important;background-color:#fff5f5!important}.field-locked{border-color:#666!important;background-color:#fff!important}.form-select-lock:has(.field-mandatory-empty){border-color:#e57373!important;background-color:#fff0f0!important}.form-select-lock:has(.field-locked){border-color:#444!important;background-color:#fff!important}.field-mandatory-empty.field-locked{border-color:#e57373!important;background-color:#fff0f0!important}.form-select-lock:has(.field-mandatory-empty.field-locked){border-color:#e57373!important;background-color:#fff0f0!important}.form-scrollable{overflow-y:auto}.form-header{text-align:center;font-size:20px;font-weight:700;color:#2a5298;padding:12px 16px 8px;flex-shrink:0}.cass-banner{padding:8px 16px;font-size:13px;font-weight:500;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.cass-success{background:#e8f5e9;color:#2e7d32;border-bottom:1px solid #a5d6a775;border-top:1px solid #a5d6a775}.cass-failure{background:#ffebee;color:#c62828;border-bottom:1px solid #ef9a9a}.cass-warning{background:#fff8e1;color:#f57f17;border-bottom:1px solid #ffe082}.cass-pending{background:#e3f2fd;color:#1565c0;border-bottom:1px solid #90caf9}.cass-retry-btn{padding:3px 12px;font-size:12px;border:1px solid #ef9a9a;border-radius:4px;background:#fff;color:#c62828;cursor:pointer}.cass-retry-btn:hover{background:#ffcdd2}.form-body{flex:1;display:flex;gap:0;padding:12px 16px;min-height:0;overflow-y:auto}.form-main{flex:1;display:flex;flex-direction:column;gap:10px;padding-right:16px;border-right:1px solid #e8e8e8}.form-sidebar{width:270px;min-width:220px;padding-left:16px;display:flex;flex-direction:column;gap:14px}.form-field-group{display:flex;flex-direction:column;gap:3px}.form-field-group label{font-size:12px;font-weight:600;color:#555}.form-field-group input,.form-field-group select,.form-field-group textarea{padding:7px 10px;border:1px solid #ddd;border-radius:4px;font-size:13px;font-family:inherit;color:#222;background:#fff;transition:border-color .15s}.form-field-group select{padding-right:30px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23666' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 10px center;appearance:none;cursor:pointer}.form-field-group input:focus,.form-field-group select:focus,.form-field-group textarea:focus{outline:none;border-color:#90caf9}.form-full{width:100%}.form-input-lock{position:relative}.form-input-lock input{width:100%;padding-right:28px}.form-input-lock>.lock-btn{position:absolute;right:4px;top:50%;transform:translateY(-50%)}.form-input-lock select{width:100%}.form-select-lock{display:flex;align-items:center;border:1px solid #ddd;border-radius:4px;background:#fff;transition:border-color .15s;position:relative}.form-select-lock:focus-within{border-color:#90caf9}.form-select-lock select{flex:1;min-width:0;border:none;border-radius:4px 0 0 4px;padding-right:30px;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23666' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 10px center;appearance:none}.form-select-lock select:focus{outline:none}.form-select-lock>.lock-btn{position:relative;transform:none;flex-shrink:0;border-left:1px solid #eee;width:28px;height:auto;align-self:stretch}.form-select-lock>.lock-btn:before{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.form-textarea-lock{position:relative}.form-textarea-lock textarea{width:100%;padding-bottom:24px;resize:vertical;min-height:120px}.form-textarea-lock>.lock-btn{position:absolute;right:6px;bottom:6px;top:auto;transform:none;opacity:.35}.form-textarea-lock>.lock-btn:hover{opacity:.7}.form-textarea-lock>.lock-btn.locked{opacity:.8}.lock-btn{width:20px;height:20px;border:none;background:none;cursor:pointer;flex-shrink:0;position:relative;transition:opacity .15s}.lock-btn:hover{opacity:.8}.lock-btn:before{content:"";display:block;width:16px;height:16px;position:absolute;top:2px;left:2px;background-size:contain;background-repeat:no-repeat}.lock-btn.locked{opacity:.9}.lock-btn.locked:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23333'%3E%3Cpath d='M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1s3.1 1.39 3.1 3.1v2z'/%3E%3C/svg%3E")}.lock-btn.unlocked{opacity:.4}.lock-btn.unlocked:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23999'%3E%3Cpath d='M12 17c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm6-9h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6h1.9c0-1.71 1.39-3.1 3.1-3.1s3.1 1.39 3.1 3.1v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm0 12H6V10h12v10z'/%3E%3C/svg%3E")}.form-top-row{display:flex;gap:16px}.form-account-group,.form-caller-group{flex:1}.form-account-input-row{display:flex;gap:6px}.form-account-input-row input{flex:1}.form-account-btn{padding:6px 14px;font-size:12px;font-weight:600;border:1px solid #90caf9;border-radius:4px;background:#e3f2fd;color:#1565c0;cursor:pointer;white-space:nowrap}.form-account-btn:hover{background:#bbdefb}.form-row-4{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:10px}.form-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.form-divider{text-align:center;position:relative;margin:6px 0}.form-divider:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:#e0e0e0}.form-divider span{position:relative;background:#fff;padding:0 12px;font-size:11px;color:#bbb;font-style:italic}.form-radio-group label:first-child{color:#555}.form-radio-lock{display:flex;align-items:center;border:1px solid #ddd;border-radius:4px;background:#fff;transition:border-color .15s}.form-radio-lock .form-radio-row{flex:1;display:flex;align-items:center;gap:16px;padding:7px 12px}.form-radio-lock>.lock-btn{position:relative;transform:none;flex-shrink:0;border-left:1px solid #eee;width:28px;height:auto;align-self:stretch}.form-radio-lock>.lock-btn:before{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.form-radio-lock.field-mandatory-empty{border-color:#e57373!important;background-color:#fff0f0!important}.form-radio-lock.field-locked{border-color:#666!important;background-color:#fff!important}.form-radio-lock.field-mandatory-empty.field-locked{border-color:#e57373!important;background-color:#fff0f0!important}.form-radio{display:flex;align-items:center;gap:4px;font-size:13px;font-weight:400!important;color:#333!important;cursor:pointer}.form-radio input[type=radio]{margin:0;cursor:pointer}.form-info-text{font-size:12px;font-style:italic;color:#e65100;background:#fff3e0;border:1px solid #ffe0b2;border-radius:4px;padding:8px 12px}.form-validation-errors{list-style:none;background:#fff8f0;border:1px solid #ffe0b2;border-radius:6px;padding:10px 14px;display:flex;flex-direction:column;gap:4px}.form-validation-errors li{font-size:12px;color:#bf5600;line-height:1.4}.form-validation-errors li:before{content:"•";margin-right:6px;color:#e6852d}.form-actions{display:flex;justify-content:center;align-items:center;gap:16px;padding:8px 0}.form-cancel-btn{padding:8px 20px;font-size:13px;border:1px solid #ccc;border-radius:4px;background:#fff;color:#555;cursor:pointer}.form-cancel-btn:hover{background:#f5f5f5}.form-submit-btn{padding:10px 24px;font-size:14px;font-weight:600;border:1px solid #90caf9;border-radius:4px;background:#e3f2fd;color:#1565c0;cursor:pointer;transition:all .15s}.form-submit-btn:not(:disabled):hover{background:#bbdefb}.form-submit-btn:disabled{opacity:.45;cursor:not-allowed}.form-submit-result{text-align:center;font-size:13px;font-weight:500;padding:8px 12px;border-radius:4px}.form-submit-success{background:#e8f5e9;color:#2e7d32;border:1px solid #a5d6a7}.form-submit-error{background:#ffebee;color:#c62828;border:1px solid #ef9a9a}.form-ratings{display:flex;flex-direction:column;gap:8px}.form-ratings-title{font-size:12px;font-weight:600;color:#888;text-align:center;text-transform:uppercase;letter-spacing:.4px}.form-ratings .star-rating-label{min-width:120px;font-size:12px;text-align:right}.form-ratings .ts-comment-wrapper{max-width:100%}.terminal-screen{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 32px;text-align:center;gap:16px}.terminal-icon{font-size:56px;margin-bottom:8px}.terminal-icon-success{color:#4caf50}.terminal-icon-failure{color:#e53935}.terminal-title{font-size:20px;font-weight:600;color:#2a3a5e;max-width:480px;line-height:1.4}.terminal-title-error{color:#c62828}.terminal-subtitle{font-size:14px;color:#777;max-width:400px;line-height:1.5}.terminal-error-detail{font-size:13px;color:#555;max-width:520px;line-height:1.5;margin-top:4px}.terminal-error-debug{font-size:11px;color:#aaa;max-width:480px;line-height:1.4;margin-top:2px}.terminal-summary-section{width:100%;max-width:560px;display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:8px}.terminal-summary-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:#888;align-self:flex-start}.terminal-summary-box{width:100%;padding:14px 16px;border:1px solid #dde2ec;border-radius:8px;font-size:13px;font-family:inherit;line-height:1.6;color:#333;background:#f8f9fc;resize:none;cursor:text}.terminal-summary-box:focus{outline:none;border-color:#90caf9}.terminal-copy-btn{padding:8px 20px;font-size:13px;font-weight:500;font-family:inherit;border:1px solid #ccd2de;border-radius:6px;background:#f0f2f5;color:#555;cursor:pointer;transition:all .15s ease}.terminal-copy-btn:hover{background:#e4e8f0;border-color:#a8b4cc}.terminal-copy-btn i{margin-right:6px}
