:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;--root-background-color: #101018;--container-background-color: #202030;--section-background-color: #232336;--container-border-color: #444;--border-color: #30304a;--chat-background-color: #181820;--primary-accent: #646cff;--text-primary: #fff;--header-small-color: #aaa;--input-background-color: #1e1e2f;color-scheme:light dark;color:#ffffffde;background-color:var(--root-background-color);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{max-width:1280px;margin:0 auto;width:100%}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:2em;line-height:1.1}.container{width:90%;margin:40px auto;border:1px solid var(--container-border-color);border-radius:12px;box-shadow:0 2px 16px #0002;display:flex;flex-direction:column;height:90vh;background:var(--container-background-color);overflow:hidden}.header{padding:1.3em 1.5em 1em;background:var(--section-background-color);border-bottom:1px solid var(--border-color)}.header h1{margin:0;font-size:1.4em;display:grid;grid-auto-flow:column;grid-template-columns:min-content min-content auto;align-items:center;gap:.5em}.header small{font-weight:400;font-size:.6em;color:var(--header-small-color);margin-left:6px;margin-top:6px}.instructions h3{margin-bottom:0}.instructions ul,p{margin-top:0}.chats{flex:1;padding:1.2em;overflow-y:auto;background:var(--chat-background-color);scrollbar-width:thin;scrollbar-color:var(--border-color) transparent;display:flex;flex-direction:column;justify-content:space-between}.chats::-webkit-scrollbar{width:8px}.chats::-webkit-scrollbar-track{background:transparent}.chats::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.chats::-webkit-scrollbar-thumb:hover{background:var(--container-border-color)}.message{display:flex;margin-bottom:12px}.message>div{background:var(--section-background-color);color:var(--text-primary);padding:.7em 1.1em;border-radius:1em 1em 1em 0;max-width:75%}.message>div p{margin:.5em 0;line-height:1.6}.message>div p:first-child{margin-top:0}.message>div p:last-child{margin-bottom:0}.message>div h1,.message>div h2,.message>div h3,.message>div h4,.message>div h5,.message>div h6{margin:.8em 0 .5em;font-weight:600}:is(.message>div h1,.message>div h2,.message>div h3,.message>div h4,.message>div h5,.message>div h6):first-child{margin-top:0}.message>div h1{font-size:1.5em}.message>div h2{font-size:1.3em}.message>div h3{font-size:1.1em}.message>div ul,.message>div ol{margin:.5em 0;padding-left:1.5em}.message>div li{margin:.3em 0}.message>div code{background:#0003;padding:.2em .4em;border-radius:4px;font-family:Courier New,monospace;font-size:.9em}.message>div pre{background:#0003;padding:.8em;border-radius:6px;overflow-x:auto;margin:.8em 0}.message>div pre code{background:none;padding:0}.message>div blockquote{border-left:3px solid var(--primary-accent);padding-left:1em;margin:.8em 0;opacity:.9}.message>div strong{font-weight:600}.message>div em{font-style:italic}.message>div a{color:var(--primary-accent);text-decoration:underline}.message.user{justify-content:flex-end}.message.user>div{background:var(--primary-accent);border-radius:1em 1em 0}.error-message{display:flex;animation:errorFadeIn .3s ease}.error-message>p{background:#dc354526;color:#ff6b6b;padding:.7em 1.1em;border-radius:1em;border:1px solid rgba(220,53,69,.3);margin:0;width:100%;font-size:.95em;line-height:1.5}@keyframes errorFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-wrapper{display:flex;flex-direction:column;gap:.5em;flex:1;min-width:150px}.dropdown-label{font-size:.9em;color:var(--text-primary);font-weight:500}.dropdown{position:relative;width:100%}.dropdown .tooltip-wrapper{width:100%}.dropdown-trigger{width:100%;padding:.6em .8em;border:1px solid var(--border-color);border-radius:8px;background:var(--input-background-color);color:var(--text-primary);font-size:1em;outline:none;cursor:pointer;transition:border-color .2s,background .2s;display:flex;align-items:center;justify-content:space-between;gap:.5em}.dropdown-trigger:hover{border-color:var(--primary-accent);background:var(--input-background-color)}.dropdown-trigger:focus{border-color:var(--primary-accent)}.dropdown-arrow{transition:transform .2s ease;color:var(--text-primary);flex-shrink:0}.dropdown-arrow.open{transform:rotate(180deg)}.dropdown-menu{position:absolute;bottom:calc(100% + 4px);left:0;right:0;background:var(--input-background-color);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px #0000004d;z-index:1000;overflow:hidden;animation:dropdownFadeIn .2s ease}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.dropdown-option{width:100%;padding:.7em .8em;border:none;background:transparent;color:var(--text-primary);font-size:1em;text-align:left;cursor:pointer;transition:background .15s;display:block}.dropdown-option:hover{background:var(--section-background-color)}.dropdown-option.selected{background:var(--primary-accent);color:var(--text-primary);font-weight:500}.dropdown-option:not(:last-child){border-bottom:1px solid var(--border-color)}.footer{position:relative}.footer .options{box-sizing:border-box;padding:1em 1.5em;background:var(--section-background-color);border-top:1px solid var(--border-color);transition:all .2s ease;max-height:200px;width:100%;opacity:0;transform:TranslateY(0);position:absolute;bottom:-1px}.footer .options.visible{opacity:1;transform:TranslateY(var(--form-height, -100px))}.footer .options .options-row{display:flex;gap:1.5em;align-items:flex-start;flex-wrap:wrap}.footer .button{background:transparent;border:1px solid var(--border-color);border-radius:8px;padding:.8em;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s;flex-shrink:0}.footer .button:hover{background:var(--input-background-color);border-color:var(--primary-accent)}.footer .button img{width:20px;height:20px;filter:invert(1)}.footer form{position:relative;display:flex;align-items:center;gap:8px;padding:1em 1.5em;background:var(--section-background-color);border-top:1px solid var(--border-color);z-index:10}.footer form input{flex:1;padding:.8em 1em;border:1px solid var(--border-color);border-radius:8px;background:var(--input-background-color);color:var(--text-primary);font-size:1em;outline:none;order:2;box-sizing:border-box;min-width:0}.footer form .button-row{display:contents}.footer form .cog-button{order:1}.footer form button[type=submit]{background:var(--primary-accent);border:none;border-radius:8px;padding:.8em 1.4em;color:var(--text-primary);font-weight:600;cursor:pointer;font-size:1em;transition:background .2s;display:flex;align-items:center;justify-content:center;flex-shrink:0;order:3}.footer form button[type=submit]:active:not(:disabled){background:#5058d4}.footer form button[type=submit]:disabled{opacity:.5;cursor:not-allowed;background:var(--primary-accent)}.footer form button[type=submit] img,.footer form button[type=submit] .submit-icon{width:18px;height:18px}.footer form button[type=submit] .submit-text{display:none}@media(max-width:768px){.container{width:100%;margin:0 auto;border-radius:0;border:none;box-shadow:none;height:100vh}.header h1{font-size:1.2em;gap:.3em}.header small{grid-row:2/3;grid-column:1/4;margin-top:0;margin-left:0}.chats .message>div,.chats .user.message>div{max-width:100%;font-size:1em;padding:.7em .8em}.options{padding:.8em 1em}.dropdown-wrapper{min-width:unset}.footer form{flex-direction:column;align-items:stretch;gap:8px;padding:.8em 1em;box-sizing:border-box;width:100%}.footer form input{width:100%;font-size:1em;padding:.8em 1em;margin-bottom:0;order:1;box-sizing:border-box;min-width:0;max-width:100%}.footer form .button-row{display:flex;align-items:center;gap:8px;width:100%;order:2}.footer form .cog-button{flex-shrink:0;padding:.8em;order:1}.footer form button[type=submit]{flex:1;font-size:1em;padding:.8em 1em;order:2}.footer form button[type=submit] .submit-icon{display:none}.footer form button[type=submit] .submit-text{display:inline}}.tooltip-wrapper{position:relative;display:inline-block}.options-row>.tooltip-wrapper{width:100%}.tooltip-wrapper>.dropdown-wrapper{width:100%}.tooltip-text{width:max-content;visibility:hidden;opacity:0;position:absolute;background-color:#000000e6;color:var(--text-primary);text-align:center;padding:.5em .8em;border-radius:6px;font-size:.85em;white-space:nowrap;z-index:1000;transition:opacity .2s ease,visibility .2s ease;pointer-events:none;max-width:250px;white-space:normal;line-height:1.4}.tooltip-wrapper:hover:not(.hidden) .tooltip-text{visibility:visible;opacity:1}.tooltip-top .tooltip-text{bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.tooltip-top .tooltip-text:after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:rgba(0,0,0,.9) transparent transparent transparent}.tooltip-bottom .tooltip-text{top:calc(100% + 8px);left:50%;transform:translate(-50%)}.tooltip-bottom .tooltip-text:after{content:"";position:absolute;bottom:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:transparent transparent rgba(0,0,0,.9) transparent}.tooltip-left .tooltip-text{right:calc(100% + 8px);top:50%;transform:translateY(-50%)}.tooltip-left .tooltip-text:after{content:"";position:absolute;left:100%;top:50%;margin-top:-5px;border-width:5px;border-style:solid;border-color:transparent transparent transparent rgba(0,0,0,.9)}.tooltip-right .tooltip-text{left:calc(100% + 8px);top:50%;transform:translateY(-50%)}.tooltip-right .tooltip-text:after{content:"";position:absolute;right:100%;top:50%;margin-top:-5px;border-width:5px;border-style:solid;border-color:transparent rgba(0,0,0,.9) transparent transparent}// TODO: UPDATE ITEMS BELOW{}
