.notification-container{position:fixed;top:-100px;display:flex;justify-content:center;width:100%;transition:top .3s ease-in-out}.notification-container.visible{top:24px}.notification-container .notification{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;width:100%;max-width:600px;background:#322f35;border-radius:4px;box-shadow:0 4px 8px 3px #00000026}.notification-container .notification span{color:#fff;font-size:14px;font-weight:400;line-height:21px}.notification-container .notification svg{cursor:pointer}.notification-container .notification svg path{fill:#fff}.wrapper-error-boundary{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100svh}.wrapper-error-boundary h2{margin-top:16px;margin-bottom:8px;font-size:22px;font-weight:600;line-height:100%}.wrapper-error-boundary p{margin-bottom:16px;font-size:14px;font-weight:400;line-height:21px}.wrapper-error-boundary div{margin-bottom:16px;padding:12px 24px;width:100%;max-width:1100px;max-height:400px;background:#fdeded;border-radius:8px}.wrapper-error-boundary div pre{white-space:pre-wrap;word-break:break-word}.wrapper-error-boundary button{padding:0 24px;min-width:40px;min-height:40px;background:#f2faff;border:1px solid #2E7FF9;border-radius:8px;color:#2e7ff9;font-size:14px;font-weight:400;line-height:21px;line-height:0;cursor:pointer;transition:all .3s ease-in-out}.wrapper-error-boundary button:hover{background:#2e7ff9;color:#fff}.text-output{display:flex;flex-direction:column;padding-right:8px;margin-top:auto;margin-bottom:20px;width:100%;max-height:100%;overflow-y:scroll}.text-output .text{display:flex;align-items:flex-end;padding:8px 12px;margin-bottom:24px;width:fit-content;overflow-wrap:anywhere;white-space:pre-wrap}.text-output .text:last-child{margin-bottom:0}.text-output .text.user{margin-left:auto;border:1px solid #BBD6FF;border-radius:8px 8px 0}.text-output .text.bot{margin-right:auto;border-radius:8px 8px 8px 0;background:#e7f6ff}.text-output .text div{display:flex;margin-left:8px;cursor:pointer}@keyframes voice-output{0%{transform:rotate(-45deg)}25%{transform:rotate(-180deg)}50%{transform:rotate(120deg)}75%{transform:rotate(-90deg)}to{transform:rotate(-45deg)}}.voice-output{display:flex;justify-content:center;align-items:center;width:100%;height:100%}.voice-output .outer{display:flex;justify-content:center;align-items:center;width:200px;height:200px;background:linear-gradient(180deg,#e7f6ff,#d7e7ff);border-radius:100%;filter:blur(10px);animation:voice-output 3s linear infinite}.voice-output .inner{width:100px;height:100px;background:linear-gradient(180deg,#e7f6ff,#d7e7ff);border-radius:100%;filter:blur(10px)}.voice-output.processing .outer{background:linear-gradient(143.15deg,#c5e9ff 8.37%,#beffec 91.49%)}.voice-output.speaking .outer{background:linear-gradient(143.15deg,#cdecff 8.37%,#f7ecff 91.49%)}.view{display:flex;height:calc(100% - 140px);width:100%}.text-input{margin-top:8px;width:100%}.text-input input{padding:0 16px;width:100%;height:56px;border:1px solid #BBD6FF;border-radius:50px;color:#525252;font-size:14px;font-weight:400;line-height:21px;outline:none}.text-input input:disabled{border:1px solid #D3D3D3;background:transparent}.voice-input{display:flex;flex-direction:column;align-items:center}.voice-input,.voice-input p,.voice-input div,.voice-input div>div,.voice-input div>span,.voice-input div>svg{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.voice-input p{margin-bottom:8px;height:19px;color:#5a9cff;font-size:14px;font-weight:400;line-height:21px}.voice-input div{display:flex;flex-direction:column;align-items:center;justify-content:center;width:112px;height:112px;background:#f2faff;border-radius:100%;cursor:pointer}.voice-input div svg{width:32px;height:32px}.voice-input .listen div div{margin-top:16px;margin-bottom:6px;width:22px;height:22px;border-radius:100%;background:#fd7a7a}.voice-input .waiting,.voice-input .processing,.voice-input .speaking{background:#f1f1f1;pointer-events:none}.voice-input .waiting svg path,.voice-input .processing svg path,.voice-input .speaking svg path{fill:#c6c6c6}.output-switch{position:relative;display:flex;align-items:center;justify-content:center;min-width:56px;height:56px;border-radius:100%;background:#f2faff;transition:background-color .3s ease-in-out;cursor:pointer}.output-switch:hover,.output-switch.active{background:#2e7ff9}.output-switch:hover>svg path,.output-switch.active>svg path{fill:#fff}.output-switch svg path{fill:#2e7ff9;transition:fill .3s ease-in-out}.output-switch .output-switch-menu{position:absolute;top:-216px;display:flex;flex-direction:column}.output-switch .output-switch-menu div{display:flex;align-items:center;justify-content:center;margin-bottom:16px;width:56px;height:56px;background:#f2faff;border-radius:100%;transition:background-color .3s ease-in-out;cursor:pointer}.output-switch .output-switch-menu div:hover{background:#2e7ff9}.output-switch .output-switch-menu div:hover svg path{fill:#fff}.output-switch .output-switch-menu div.active{background:#bbd6ff}.output-switch .output-switch-menu div.active svg path{fill:#2e7ff9}.output-switch .output-switch-menu div:nth-child(2),.output-switch .output-switch-menu div:nth-child(3){background:#d3d3d3;pointer-events:none}.output-switch .output-switch-menu div:nth-child(2) svg path,.output-switch .output-switch-menu div:nth-child(3) svg path{fill:#f1f1f1}.input-switch{display:flex;align-items:center;justify-content:center;min-width:56px;height:56px;border-radius:100px;background:#f2faff;transition:background-color .3s ease-in-out;cursor:pointer}.input-switch:hover{background:#2e7ff9}.input-switch:hover svg path{fill:#fff}.input-switch svg{width:28px;height:28px}.input-switch svg path{transition:fill .3s ease-in-out}.control{display:flex;flex-direction:column;justify-content:space-between;width:100%}.control .control-container{display:flex;justify-content:space-between}.control .control-container.text{align-items:center}.control .control-container.voice{align-items:flex-end}.control .control-container p{color:#5a9cff;font-size:14px;font-weight:400;line-height:21px}.app{display:flex;justify-content:center;height:100svh;padding:100px 24px 50px}.app .container{display:flex;flex-direction:column;justify-content:space-between;align-items:center;width:100%;max-width:600px;height:100%}/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}
