.chat-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;width:100%;box-sizing:border-box;position:relative}.chat-header-left,.chat-header-right{display:flex;align-items:center;width:80px;flex-shrink:0}.chat-header-center{flex:1;text-align:center}.chat-title{font-family:sans-serif;font-size:1.25rem;color:#ddddf0;letter-spacing:.6px;margin:0;white-space:nowrap}.chat-logo{height:28px;width:auto;display:block}.new-chat-btn{background:none;border:none;color:#ddddf0;font-size:1.3rem;cursor:pointer;display:flex;align-items:center;justify-content:flex-end;transition:opacity .2s;width:100%}.new-chat-btn:hover{opacity:.7}.tips-wrapper{position:relative;display:flex;align-items:center;justify-content:center;margin-right:.5rem;cursor:pointer}.tips-icon{color:#ddddf0;font-size:1.4rem;transition:color .2s,transform .15s ease}.tips-wrapper:hover .tips-icon{opacity:.7}.tips-dropdown{position:absolute;top:2.2rem;right:0;background:#0f0f11;border:1px solid #2a2a2a;border-radius:.8rem;padding:1rem 1.2rem;width:280px;z-index:20;box-shadow:0 4px 14px #0006;animation:fadeIn .15s ease-in-out}.tips-dropdown h4{color:#ddddf0;font-size:.95rem;margin:0 0 .5rem;font-weight:600}.tips-dropdown h5{color:#ddddf0;font-size:.9rem;margin:.8rem 0 .4rem;font-weight:600}.tips-dropdown p{color:#d0cfe1;font-size:.85rem;line-height:1.35;margin:0 0 .6rem}.tips-dropdown ul{list-style:none;padding:0;margin:.2rem 0 .6rem}.tips-dropdown li{color:#bfbfcb;font-size:.82rem;line-height:1.35;margin-bottom:.4rem}.tips-dropdown code{background:#1a1a1f;color:#f1e9fd;font-family:Courier New,monospace;padding:2px 5px;border-radius:4px;font-size:.8rem}.prompt-examples p{background:#0b0b0c;padding:.4rem .6rem;margin:.3rem 0;border-radius:.3rem;font-size:.8rem;color:#ddd}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.prompt-examples code{background:none;padding:0;border-radius:0}.chat-window{flex:1;overflow-y:auto;padding:1rem 1rem 0;display:flex;flex-direction:column;gap:.75rem;width:100%;min-height:0;box-sizing:border-box}.chat-window::-webkit-scrollbar{width:6px}.chat-window::-webkit-scrollbar-thumb{background:#333;border-radius:3px}.chat-message-wrapper{display:flex;flex-direction:column;align-items:flex-start;width:100%}.chat-message-wrapper.user{align-items:flex-end}.chat-message-wrapper.assistant{align-items:flex-start}.chat-message{--bubble-pad-x: .9rem;--bubble-pad-y: .6rem;max-width:85%;padding:var(--bubble-pad-y) var(--bubble-pad-x);border-radius:1rem;line-height:1.4;font-size:1rem;width:-moz-fit-content;width:fit-content;word-wrap:break-word;transition:max-width .2s ease}.chat-message.user{align-self:flex-end;background:#1b1b1f;color:#ddddf0;margin-left:auto}.chat-message.assistant{align-self:flex-start;background:transparent;color:#ddddf0}.message-tools{display:flex;align-items:center;gap:.3rem;margin-top:.3rem}.message-tools.assistant{align-self:flex-start;margin-left:.9rem;opacity:1}.message-tools.user{align-self:flex-end;margin-right:.9rem;opacity:0;pointer-events:none;transition:opacity .2s}.chat-message-wrapper:hover .message-tools.user{opacity:1;pointer-events:auto}.copy-btn,.redo-btn{background:none;border:none;color:#6c6c78;font-size:1.05rem;line-height:1;cursor:pointer;display:flex;align-items:center;transition:color .2s,transform .1s}.redo-btn{font-size:1.15rem}.copy-btn:hover,.redo-btn:hover{color:#ddddf0}.copy-btn svg,.redo-btn svg{pointer-events:none}.temp-status-bubble{display:inline-block;align-self:flex-start;margin-top:.3rem;margin-left:.75rem;font-size:1rem;background:none;padding-left:.5rem;position:relative;text-align:left;background:linear-gradient(90deg,#6b7280 25%,#d1d5db,#6b7280 75%);background-size:200% 100%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:waveShift 2.5s linear infinite}@keyframes waveShift{0%{background-position:200% 0}to{background-position:-200% 0}}.chatbar{position:sticky;bottom:0;flex-shrink:0;width:100%;padding:.5rem 1.25rem;display:flex;align-items:center;justify-content:center;z-index:5;box-sizing:border-box}.chatbar input{flex:1;min-width:0;border:none;outline:none;background:#141516;color:#ddddf0;font-size:1rem;padding:1.05rem 3.3rem 1.05rem 1.3rem;border-radius:9999px;box-shadow:inset 0 0 0 1px #242428;transition:box-shadow .2s,background .2s;box-sizing:border-box}.chatbar input::-moz-placeholder{color:#6c6c78}.chatbar input::placeholder{color:#6c6c78}.chatbar button{position:absolute;right:1.85rem;background:#ddddf0;border:none;color:#000;border-radius:50%;width:38px;height:38px;display:flex;align-items:center;justify-content:center;font-size:1rem;cursor:pointer;transition:background .2s,transform .1s;box-shadow:0 0 0 2px #1a1a1f}.chatbar button:hover{background:#999}.chat-section{flex-shrink:0;display:flex;flex-direction:column;height:100%;color:#ddddf0;position:relative;transition:width .15s ease;box-sizing:border-box}.chat-terms{text-align:center;font-size:12px;padding-bottom:.5rem}.chat-terms a{color:#ddddf0;text-decoration:none;transition:opacity .2s}.chat-terms a:hover{opacity:1}.visual-wrapper{position:relative;width:100%;height:100%;min-height:400px;display:flex;justify-content:center;align-items:center;overflow:hidden;background:transparent;box-sizing:border-box}.viz-canvas{width:100%;height:100%;border-radius:inherit;background:transparent;transition:opacity .25s ease}.viz-error{position:absolute;bottom:1rem;left:1rem;right:1rem;border:1px solid #2e2e36;color:#ff7676;padding:1rem 1.2rem;border-radius:.6rem;font-family:Fira Code,monospace;font-size:.9rem;line-height:1.4;white-space:pre-wrap;box-shadow:none;background:transparent;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.viz-canvas,.code-display{width:100%;height:100%;position:absolute;top:0;left:0;transition:opacity .3s ease}.viz-canvas.hidden,.code-display.hidden{opacity:0;pointer-events:none}.code-display{background:transparent;color:#ddddf0;font-family:Fira Code,monospace;font-size:.9rem;line-height:1.45;padding:2rem 2.5rem;overflow-y:auto;border-radius:inherit;box-shadow:none;border:none;scrollbar-width:thin;scrollbar-color:#2e2e36 transparent}.code-display::-webkit-scrollbar{width:6px}.code-display::-webkit-scrollbar-thumb{background:#2e2e36;border-radius:3px}.code-display::-webkit-scrollbar-track{background:transparent}.viz-canvas.active,.code-display.active{animation:fadeInViz .25s ease-in-out}pre[class*=language-],code[class*=language-]{background:transparent!important;box-shadow:none!important}.editable-pre{width:100%;height:100%;background:#0a0c0c;color:#ddddf0;font-family:Fira Code,monospace;font-size:.95rem;border:none;outline:none;padding:1rem;overflow:auto;white-space:pre;line-height:1.4;box-sizing:border-box;resize:none;caret-color:#fff;cursor:text;-webkit-user-select:text;-moz-user-select:text;user-select:text;transition:background .2s ease}.editable-pre:focus{outline:none;box-shadow:none}.editable-pre::-moz-selection{background:#3385ff73;color:#ddddf0}.editable-pre::selection{background:#3385ff73;color:#ddddf0}.editable-pre.active{display:block}.editable-pre.hidden{display:none}.toggle-container{position:absolute;top:1rem;right:1rem;display:flex;align-items:center;justify-content:center;gap:1rem;background:#090a0a;border:1px solid #222;border-radius:1rem;padding:.9rem 2rem;min-width:100px;min-height:45px;z-index:100;box-shadow:0 6px 18px #00000073;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeInToggle .15s ease-in-out}.toggle-btn{background:none;border:none;color:#ddddf0;font-size:1.35rem;cursor:pointer;transition:color .25s ease,transform .1s ease;display:flex;align-items:center;justify-content:center;padding:0}.toggle-btn:hover{opacity:.7}.toggle-btn.active{color:#8b5cf6;opacity:1}@keyframes fadeInToggle{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}code[class*=language-],pre[class*=language-]{color:#ccc;background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.block-comment,.token.prolog,.token.doctype,.token.cdata{color:#999}.token.punctuation{color:#ccc}.token.tag,.token.attr-name,.token.namespace,.token.deleted{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.number,.token.function{color:#f08d49}.token.property,.token.class-name,.token.constant,.token.symbol{color:#f8c555}.token.selector,.token.important,.token.atrule,.token.keyword,.token.builtin{color:#cc99cd}.token.string,.token.char,.token.attr-value,.token.regex,.token.variable{color:#7ec699}.token.operator,.token.entity,.token.url{color:#67cdcc}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}html,body{margin:0;padding:0;overflow:hidden;background:#0e0e0f}.home-container{display:flex;height:100vh;width:100vw;margin:0;padding:0;overflow:hidden;background:#0a0c0c;color:#f1e9fd;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.chat-wrapper{height:100%;display:flex;flex-direction:column;background:#090a0a;border-right:1px solid #222;box-sizing:border-box;padding:1rem}.resizer{width:6px;cursor:ew-resize;background:transparent;transition:background .2s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.visual-wrapper{flex:1;height:100%;background:#0a0c0c;display:flex;flex-direction:column;justify-content:center;align-items:center}.chat-wrapper>*,.visual-wrapper>*{margin:0;padding:0}
