@keyframes overlayChatMdBlockAppear{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}:where(.overlay-chat-surface) .md-block-appear{animation:.3s ease-out forwards overlayChatMdBlockAppear}:where(.overlay-chat-surface) .md-block-streaming{opacity:.55;transition:opacity .1s}@keyframes overlayChatToolChipSoftBlink{0%,to{opacity:1}50%{opacity:.68}}:where(.overlay-chat-surface) .tool-chip-running,:where(.overlay-chat-surface) .overlay-tool-chip-running{animation:1.4s ease-in-out infinite overlayChatToolChipSoftBlink}:where(.overlay-chat-surface) .code-block-wrapper{border:1px solid var(--border);border-radius:10px;margin:0 0 1em;overflow:hidden}:where(.overlay-chat-surface) .code-block-header{background:var(--surface-subtle);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.75rem;padding:.45rem .9rem;display:flex}:where(.overlay-chat-surface) .code-block-lang{color:var(--muted);font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:.75rem}:where(.overlay-chat-surface) .code-block-copy{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:.72rem}:where(.overlay-chat-surface) .code-block-copy:hover{color:var(--foreground)}:where(.overlay-chat-surface) .code-block-actions{align-items:center;gap:.2rem;display:inline-flex}:where(.overlay-chat-surface) .code-block-action{width:1.75rem;height:1.75rem;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;transition:background-color .16s,border-color .16s,color .16s;display:inline-flex}:where(.overlay-chat-surface) .code-block-action:hover:not(:disabled),:where(.overlay-chat-surface) .code-block-action[data-active=true]{border-color:var(--border);background:var(--surface-elevated);color:var(--foreground)}:where(.overlay-chat-surface) .code-block-action:disabled{cursor:not-allowed;opacity:.38}:where(.overlay-chat-surface) .code-block-render{background:#fff;min-height:320px}:where(.overlay-chat-surface) .code-block-render-frame{background:#fff;border:0;width:100%;height:clamp(320px,58vh,560px);display:block}@media (max-width:640px){:where(.overlay-chat-surface) .code-block-render{min-height:260px}:where(.overlay-chat-surface) .code-block-render-frame{height:clamp(260px,55vh,460px)}}[data-theme=dark] :where(.overlay-chat-surface) .code-block-wrapper .react-syntax-highlighter,:where(.overlay-chat-surface[data-theme=dark]) .code-block-wrapper .react-syntax-highlighter{background:var(--surface-subtle)!important}[data-theme=dark] :where(.overlay-chat-surface) .code-block-wrapper pre,[data-theme=dark] :where(.overlay-chat-surface) .code-block-wrapper code,:where(.overlay-chat-surface[data-theme=dark]) .code-block-wrapper pre,:where(.overlay-chat-surface[data-theme=dark]) .code-block-wrapper code{background:0 0!important}[data-theme=dark] :where(.overlay-chat-surface) .code-block-wrapper .react-syntax-highlighter code[class*=language-],:where(.overlay-chat-surface[data-theme=dark]) .code-block-wrapper .react-syntax-highlighter code[class*=language-]{text-shadow:none}:where(.overlay-chat-surface) .table-wrapper{-webkit-overflow-scrolling:touch;border-radius:.5rem;max-width:100%;margin:0 0 1em;overflow-x:auto}:where(.overlay-chat-surface) .markdown-content table{border-collapse:collapse;table-layout:auto;width:auto;min-width:100%;max-width:none;font-size:.875rem}:where(.overlay-chat-surface) .markdown-content th{background:var(--surface-muted);text-align:left;border:1px solid var(--border);white-space:normal;word-break:normal;overflow-wrap:normal;min-width:7rem;padding:.5rem .85rem;font-weight:600}:where(.overlay-chat-surface) .markdown-content td{border:1px solid var(--border);vertical-align:top;white-space:normal;word-break:normal;overflow-wrap:normal;min-width:7rem;padding:.45rem .85rem}:where(.overlay-chat-surface) .markdown-content td ul,:where(.overlay-chat-surface) .markdown-content td ol{margin:.35em 0 0;padding-left:1.25em}:where(.overlay-chat-surface) .markdown-content td li{margin:.15em 0}:where(.overlay-chat-surface) .markdown-content tr:nth-child(2n) td{background:var(--background)}:where(.overlay-chat-surface) .markdown-content{color:var(--foreground);overflow-wrap:anywhere;word-break:break-word;min-width:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.95rem;line-height:1.7}:where(.overlay-chat-surface) .room-message-self-bubble .markdown-content,:where(.overlay-chat-surface) .room-message-self-bubble .markdown-content a,:where(.overlay-chat-surface) .room-message-self-bubble .markdown-content h5,:where(.overlay-chat-surface) .room-message-self-bubble .markdown-content h6{color:var(--room-message-self-text)}:where(.overlay-chat-surface) .reasoning-markdown .markdown-content{color:inherit;font-size:.8125rem;line-height:1.55}:where(.overlay-chat-surface) .reasoning-markdown .markdown-content p{margin:0 0 .5em}:where(.overlay-chat-surface) .reasoning-markdown .markdown-content h1,:where(.overlay-chat-surface) .reasoning-markdown .markdown-content h2,:where(.overlay-chat-surface) .reasoning-markdown .markdown-content h3,:where(.overlay-chat-surface) .reasoning-markdown .markdown-content h4{margin:.4em 0 .25em;font-size:.875rem;font-weight:600}:where(.overlay-chat-surface) .reasoning-markdown .markdown-content ul,:where(.overlay-chat-surface) .reasoning-markdown .markdown-content ol{margin:.25em 0 .5em;padding-left:1.1rem}:where(.overlay-chat-surface) .reasoning-markdown .markdown-content li{margin:.1em 0}:where(.overlay-chat-surface) .markdown-content p{margin:0 0 .8em}:where(.overlay-chat-surface) .chat-user-bubble .markdown-content>:last-child{margin-bottom:0}:where(.overlay-chat-surface) .markdown-content h1{margin:0 0 .45em;font-size:2rem;font-weight:600;line-height:1.15}:where(.overlay-chat-surface) .markdown-content h2{margin:.4em 0 .45em;font-size:1.45rem;font-weight:600;line-height:1.2}:where(.overlay-chat-surface) .markdown-content h3{margin:.4em 0;font-size:1.15rem;font-weight:600;line-height:1.3}:where(.overlay-chat-surface) .markdown-content h4{margin:.35em 0;font-size:1rem;font-weight:600;line-height:1.3}:where(.overlay-chat-surface) .markdown-content h5,:where(.overlay-chat-surface) .markdown-content h6{color:#525252;margin:.3em 0;font-size:.9rem;font-weight:600;line-height:1.4}:where(.overlay-chat-surface) .markdown-content ul,:where(.overlay-chat-surface) .markdown-content ol{margin:0 0 .9em 1.4em;padding:0}:where(.overlay-chat-surface) .markdown-content ul{list-style-type:disc}:where(.overlay-chat-surface) .markdown-content ol{list-style-type:decimal}:where(.overlay-chat-surface) .markdown-content li{margin:.2em 0}:where(.overlay-chat-surface) .markdown-content blockquote{color:#52525b;border-left:3px solid #d4d4d8;margin:0 0 1em;padding-left:.9rem}:where(.overlay-chat-surface) .markdown-content .katex{font-size:1.02em}:where(.overlay-chat-surface) .markdown-content .katex-display{text-align:center;margin:.85em auto 1.1em;padding:.35em 0 .9em;font-size:1.12em;display:block;overflow:auto}:where(.overlay-chat-surface) .markdown-content .katex-display>.katex{font-size:1.2em}:where(.overlay-chat-surface) .markdown-content .katex-error{border-bottom:1px dotted color-mix(in srgb, currentColor 35%, transparent);color:inherit!important}:where(.overlay-chat-surface) .markdown-content pre{background:#f5f5f5;border-radius:12px;margin:0 0 1em;padding:.9rem 1rem;font-size:.9rem;line-height:1.6;overflow-x:auto}:where(.overlay-chat-surface) .markdown-content code{background:#f5f5f5;border-radius:6px;padding:.1rem .35rem;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:.9em}:where(.overlay-chat-surface) .markdown-content pre code{background:0 0;padding:0}:where(.overlay-chat-surface) .markdown-content hr{border:0;border-top:1px solid #e4e4e7;margin:1.25rem 0}:where(.overlay-chat-surface) .markdown-content a{color:#0a0a0a;text-underline-offset:.18em;text-decoration:underline}@keyframes overlayChatStreamMarkerPulse{0%,to{opacity:.5;transform:scale(.82)}50%{opacity:1;transform:scale(1.04)}}@keyframes overlayChatStreamMarkerReducedPulse{0%,to{opacity:.55}50%{opacity:1}}@keyframes overlayChatLoadingWordReel{0%,12.5%{transform:translate(0,0)}14.286%,26.786%{transform:translateY(-1.125rem)}28.571%,41.071%{transform:translateY(-2.25rem)}42.857%,55.357%{transform:translateY(-3.375rem)}57.143%,69.643%{transform:translateY(-4.5rem)}71.429%,83.929%{transform:translateY(-5.625rem)}85.714%,98.214%{transform:translateY(-6.75rem)}to{transform:translateY(-7.875rem)}}:where(.overlay-chat-surface) .overlay-loading-tool-logo{transform-origin:50% .5625rem;flex:0 0 .5rem;width:.5rem;animation:1.3s ease-in-out infinite overlayChatStreamMarkerPulse;display:inline-flex}:where(.overlay-chat-surface) .overlay-stream-marker{vertical-align:-.12em;pointer-events:none;justify-content:center;align-items:center;width:.95em;min-width:14px;height:.95em;min-height:14px;margin-left:.35em;animation:1.3s ease-in-out infinite overlayChatStreamMarkerPulse;display:inline-flex}:where(.overlay-chat-surface) .overlay-stream-marker--standalone,:where(.overlay-chat-surface) .markdown-content--streaming p:first-child>.overlay-stream-marker:only-child,:where(.overlay-chat-surface) .markdown-content--streaming>.overlay-stream-marker:only-child{vertical-align:middle;width:1.25rem;min-width:20px;height:1.25rem;min-height:20px;margin-left:0}:where(.overlay-chat-surface) .overlay-loading-word-viewport{min-width:8.75rem;max-width:100%;height:1.125rem;display:inline-block;overflow:hidden}:where(.overlay-chat-surface) .overlay-loading-word-track{will-change:transform;flex-direction:column;animation:14s linear infinite overlayChatLoadingWordReel;display:flex}:where(.overlay-chat-surface) .overlay-loading-word{white-space:nowrap;flex:0 0 1.125rem;height:1.125rem;display:block}@media (hover:none),(pointer:coarse){:where(.overlay-chat-surface) .chat-exchange-actions--hover{opacity:1!important}}@keyframes overlayChatStreamBlockSoften{0%{opacity:.4}to{opacity:1}}:where(.overlay-chat-surface) .markdown-content--streaming p,:where(.overlay-chat-surface) .markdown-content--streaming li,:where(.overlay-chat-surface) .markdown-content--streaming td,:where(.overlay-chat-surface) .markdown-content--streaming th,:where(.overlay-chat-surface) .markdown-content--streaming h1,:where(.overlay-chat-surface) .markdown-content--streaming h2,:where(.overlay-chat-surface) .markdown-content--streaming h3,:where(.overlay-chat-surface) .markdown-content--streaming h4,:where(.overlay-chat-surface) .markdown-content--streaming h5,:where(.overlay-chat-surface) .markdown-content--streaming h6,:where(.overlay-chat-surface) .markdown-content--streaming blockquote,:where(.overlay-chat-surface) .markdown-content--streaming pre,:where(.overlay-chat-surface) .markdown-content--streaming .code-block-wrapper{will-change:opacity;animation:.26s ease-out both overlayChatStreamBlockSoften}:where(.overlay-chat-surface) .markdown-content--streaming .overlay-stream-marker{opacity:1;animation:1.3s ease-in-out infinite overlayChatStreamMarkerPulse}@keyframes overlayChatMessageAppear{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}:where(.overlay-chat-surface) .message-appear{animation:.18s ease-out forwards overlayChatMessageAppear}@keyframes overlayChatToolLineShimmer{0%{background-position:200%}to{background-position:-200%}}:where(.overlay-chat-surface) .tool-line-shimmer{color:#0000;background-image:linear-gradient(90deg,#71717a 0% 40%,#a1a1aa 50%,#71717a 60% 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:1.35s linear infinite overlayChatToolLineShimmer}[data-theme=dark] :where(.overlay-chat-surface) .tool-line-shimmer,:where(.overlay-chat-surface[data-theme=dark]) .tool-line-shimmer{background-image:linear-gradient(90deg,#a1a1aa 0% 38%,#e4e4e7 50%,#a1a1aa 62% 100%)}@keyframes overlayChatMediaShimmerSlide{0%{transform:translate(0)}to{transform:translate(320%)}}:where(.overlay-chat-surface) .media-gen-shimmer{box-sizing:border-box;background-color:#d4d4d4;flex-shrink:0;min-width:8rem;min-height:8rem;position:relative;overflow:hidden}:where(.overlay-chat-surface) .media-gen-shimmer:after{content:"";background:linear-gradient(105deg,#0000 0%,#ffffff1f 32%,#ffffffd9 50%,#ffffff1f 68%,#0000 100%);width:55%;height:100%;animation:1.25s ease-in-out infinite overlayChatMediaShimmerSlide;position:absolute;top:0;left:-55%}:where(.overlay-chat-surface) .media-gen-mesh{box-sizing:border-box;background:linear-gradient(135deg,#efe8f4 0%,#e6dcf2 28%,#ddd0ea 52%,#e8dff6 78%,#f0e9f8 100%);flex-shrink:0;min-width:8rem;min-height:8rem;position:relative;overflow:hidden}:where(.overlay-chat-surface) .media-gen-mesh:after{content:"";filter:blur(.5px);background:linear-gradient(105deg,#0000 0%,#ffffff14 38%,#ffffffa6 50%,#ffffff14 62%,#0000 100%);width:55%;height:100%;animation:1.65s ease-in-out infinite overlayChatMediaShimmerSlide;position:absolute;top:0;left:-60%}:where(.overlay-chat-surface) .media-gen-mesh--fill{width:100%;min-width:0;height:100%;min-height:0;position:absolute;inset:0}:where(.overlay-chat-surface) .chat-user-bubble::selection,:where(.overlay-chat-surface) .chat-user-bubble ::selection{color:inherit!important;-webkit-text-fill-color:inherit!important;background-color:#80808059!important}:where(.overlay-chat-surface) .chat-user-bubble::-moz-selection{color:inherit!important;background-color:#80808059!important}:where(.overlay-chat-surface) .chat-user-bubble ::-moz-selection{color:inherit!important;background-color:#80808059!important}[data-theme=dark] :where(.overlay-chat-surface) .markdown-content pre,[data-theme=dark] :where(.overlay-chat-surface) .markdown-content code,:where(.overlay-chat-surface[data-theme=dark]) .markdown-content pre,:where(.overlay-chat-surface[data-theme=dark]) .markdown-content code{background:var(--surface-subtle);color:var(--foreground)}[data-theme=dark] :where(.overlay-chat-surface) .markdown-content blockquote,:where(.overlay-chat-surface[data-theme=dark]) .markdown-content blockquote{border-left-color:var(--border);color:var(--muted)}[data-theme=dark] :where(.overlay-chat-surface) .markdown-content h5,[data-theme=dark] :where(.overlay-chat-surface) .markdown-content h6,:where(.overlay-chat-surface[data-theme=dark]) .markdown-content h5,:where(.overlay-chat-surface[data-theme=dark]) .markdown-content h6{color:var(--muted)}[data-theme=dark] :where(.overlay-chat-surface) .markdown-content hr,:where(.overlay-chat-surface[data-theme=dark]) .markdown-content hr{border-top-color:var(--border)}[data-theme=dark] :where(.overlay-chat-surface) .markdown-content a,:where(.overlay-chat-surface[data-theme=dark]) .markdown-content a{color:var(--foreground)}@media (prefers-reduced-motion:reduce){:where(.overlay-chat-surface) .chat-exchange-actions--hover{transition:none}:where(.overlay-chat-surface) .overlay-stream-marker,:where(.overlay-chat-surface) .overlay-loading-tool-logo,:where(.overlay-chat-surface) .markdown-content--streaming .overlay-stream-marker{animation:1.8s ease-in-out infinite overlayChatStreamMarkerReducedPulse;transform:none}:where(.overlay-chat-surface) .markdown-content--streaming p,:where(.overlay-chat-surface) .markdown-content--streaming li,:where(.overlay-chat-surface) .markdown-content--streaming td,:where(.overlay-chat-surface) .markdown-content--streaming th,:where(.overlay-chat-surface) .markdown-content--streaming h1,:where(.overlay-chat-surface) .markdown-content--streaming h2,:where(.overlay-chat-surface) .markdown-content--streaming h3,:where(.overlay-chat-surface) .markdown-content--streaming h4,:where(.overlay-chat-surface) .markdown-content--streaming h5,:where(.overlay-chat-surface) .markdown-content--streaming h6,:where(.overlay-chat-surface) .markdown-content--streaming blockquote,:where(.overlay-chat-surface) .markdown-content--streaming pre,:where(.overlay-chat-surface) .markdown-content--streaming .code-block-wrapper{animation:none}}