:root{color-scheme:dark;--page-bg: #050505;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--page-bg);color:#f4f4f5;font-synthesis:none;line-height:1.5;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;min-height:100%;margin:0}body{overflow:hidden;background:var(--page-bg)}button,textarea{font:inherit}button{cursor:pointer}.app-shell{display:flex;flex-direction:row;width:100vw;height:100vh;margin:0;overflow:hidden;border:0;border-radius:0;background:#fff;box-shadow:none}:root[data-theme=day]{color-scheme:light;--page-bg: #ffffff}.history-sidebar{display:flex;width:260px;flex:0 0 260px;min-width:220px;min-height:0;flex-direction:column;gap:12px;padding:12px;overflow:hidden;border-right:1px solid #eceef2;background:#fafafa}.new-session-button{display:flex;align-items:center;gap:9px;width:100%;min-height:40px;padding:8px 10px;border:1px solid #e4e4e7;border-radius:8px;color:#18181b;background:var(--page-bg);font-size:14px;font-weight:680;text-align:left;transition:background .16s ease,border-color .16s ease,transform .16s ease}.new-session-button:hover:not(:disabled){border-color:#d4d4d8;background:#f7f7f8;transform:translateY(-1px)}.new-session-button:disabled{cursor:not-allowed;opacity:.48}.session-list{display:flex;min-height:0;flex:1;flex-direction:column;gap:4px;overflow-y:auto;padding:2px 0 8px}.session-list-item{display:flex;width:100%;min-height:50px;align-items:center;gap:6px;padding:4px;border:1px solid transparent;border-radius:8px;color:#3f3f46;background:transparent;transition:background .16s ease,border-color .16s ease,color .16s ease}.session-list-item:hover{color:#18181b;background:#f4f4f5}.session-list-item.is-active{border-color:#e4e4e7;color:#18181b;background:#fff}.session-select-button{display:flex;min-width:0;min-height:42px;flex:1;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;padding:4px 6px;border:0;color:inherit;background:transparent;text-align:left}.session-select-button:disabled,.session-delete-button:disabled{cursor:not-allowed;opacity:.48}.session-delete-button{display:grid;width:30px;height:30px;flex:0 0 30px;place-items:center;border:0;border-radius:7px;color:#a1a1aa;background:transparent;transition:background .16s ease,color .16s ease,opacity .16s ease}.session-delete-button:hover:not(:disabled){color:#b42318;background:#fee4e2}.session-title{display:-webkit-box;width:100%;overflow:hidden;font-size:13px;font-weight:650;line-height:1.25;-webkit-box-orient:vertical;-webkit-line-clamp:2}.session-meta{overflow:hidden;max-width:100%;color:#a1a1aa;font-size:11px;font-weight:560;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.theme-toggle{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:0;width:78px;min-height:34px;margin-top:auto;padding:3px;overflow:hidden;border:1px solid #e4e4e7;border-radius:999px;background:#fff}.theme-toggle-indicator{position:absolute;top:3px;left:3px;width:calc(50% - 3px);height:calc(100% - 6px);border-radius:999px;background:#18181b;box-shadow:0 6px 18px #18181b29;transition:transform .22s cubic-bezier(.2,.8,.2,1),background .18s ease,box-shadow .18s ease}.theme-toggle[data-mode=night] .theme-toggle-indicator{transform:translate(100%)}.theme-toggle-button{z-index:1;display:inline-flex;align-items:center;justify-content:center;min-width:0;min-height:28px;padding:4px;border:0;border-radius:999px;color:#71717a;background:transparent;font-size:12px;font-weight:720;transition:color .18s ease,transform .16s ease}.theme-toggle-button:hover{transform:translateY(-1px)}.theme-toggle-button[aria-pressed=true]{color:#fff}.chat-workspace{display:flex;flex:1;min-width:0;min-height:0;flex-direction:column;background:#fff}.app-header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:0 24px;border-bottom:1px solid #eceef2;background:#fffffff0}.brand-lockup{display:inline-flex;align-items:center;gap:10px;min-width:0}.brand-dot{display:block;width:18px;height:18px;border:1px solid #18181b;border-radius:6px;background:linear-gradient(90deg,transparent 45%,#18181b 45%,#18181b 55%,transparent 55%),linear-gradient(0deg,transparent 45%,#18181b 45%,#18181b 55%,transparent 55%)}.app-header h1{margin:0;overflow:hidden;font-size:15px;font-weight:680;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.preview-header h2{margin:0;font-size:18px;font-weight:720;letter-spacing:0}.header-note{margin:0;color:#71717a;font-size:12px;font-weight:560;letter-spacing:0}.status-pill,.preview-status{display:inline-flex;align-items:center;gap:8px;min-height:30px;padding:5px 10px;border:1px solid #cdd8e7;border-radius:999px;color:#27415f;background:#f8fafc;font-size:13px;font-weight:650;white-space:nowrap}.status-dot{width:8px;height:8px;border-radius:999px;background:#12b76a;box-shadow:0 0 0 3px #12b76a24}.app-shell[data-theme=night]{color:#f4f4f5;background:#050505}.app-shell[data-theme=night] .history-sidebar{border-right-color:#ffffff1a;background:#0a0a0bf0}.app-shell[data-theme=night] .new-session-button,.app-shell[data-theme=night] .session-list-item.is-active{border-color:#ffffff24;color:#f4f4f5;background:#ffffff14}.app-shell[data-theme=night] .new-session-button:hover:not(:disabled),.app-shell[data-theme=night] .session-list-item:hover{border-color:#ffffff2e;color:#fff;background:#ffffff1c}.app-shell[data-theme=night] .session-list-item{color:#d4d4d8}.app-shell[data-theme=night] .session-meta,.app-shell[data-theme=night] .header-note,.app-shell[data-theme=night] .thread-welcome p,.app-shell[data-theme=night] .reasoning-panel,.app-shell[data-theme=night] .reasoning-trigger,.app-shell[data-theme=night] .reasoning-text,.app-shell[data-theme=night] .raw-stream-panel,.app-shell[data-theme=night] .raw-stream-trigger,.app-shell[data-theme=night] .raw-stream-meta,.app-shell[data-theme=night] .raw-stream-text,.app-shell[data-theme=night] .muted{color:#a1a1aa}.app-shell[data-theme=night] .session-delete-button:hover:not(:disabled){color:#fda29b;background:#b4231838}.app-shell[data-theme=night] .theme-toggle{border-color:#ffffff1f;background:#ffffff12}.app-shell[data-theme=night] .theme-toggle-indicator{background:#f4f4f5;box-shadow:0 8px 22px #00000059}.app-shell[data-theme=night] .theme-toggle-button{color:#a1a1aa}.app-shell[data-theme=night] .theme-toggle-button[aria-pressed=true]{color:#18181b}.app-shell[data-theme=night] .chat-workspace,.app-shell[data-theme=night] .thread-root{background:#050505}.app-shell[data-theme=night] .thread-welcome h2,.app-shell[data-theme=night] .message-bubble,.app-shell[data-theme=night] .message-bubble.user,.app-shell[data-theme=night] .preview-header h2,.app-shell[data-theme=night] .app-header h1{color:#f4f4f5}.app-shell[data-theme=night] .message-bubble.user{border-color:#ffffff1a;background:#ffffff17}.app-shell[data-theme=night] .reasoning-text,.app-shell[data-theme=night] .raw-stream-text{border-left-color:#ffffff1f}.app-shell[data-theme=night] .chat-input-dropzone{border-color:#ffffff24;background:#18181ba3;box-shadow:0 1px 2px #0000003d,0 18px 50px #00000061}.app-shell[data-theme=night] .chat-input-dropzone:focus-within{border-color:#fff3;background:#27272ab8;box-shadow:0 1px 2px #00000042,0 22px 60px #0000006b}.app-shell[data-theme=night] .chat-input-dropzone[data-dragging=true]{border-color:#d4d4d86b;background:#27272ac7}.app-shell[data-theme=night] .chat-input-textarea{color:#f4f4f5}.app-shell[data-theme=night] .chat-input-textarea::placeholder{color:#a1a1aa}.app-shell[data-theme=night] .attach-button{color:#d4d4d8;background:#ffffff14}.app-shell[data-theme=night] .attach-button:hover:not(:disabled){background:#ffffff21}.app-shell[data-theme=night] .send-button{color:#18181b;background:#f4f4f5}.app-shell[data-theme=night] .send-button:hover:not(:disabled){background:#fff}.thread-root{display:flex;flex:1;min-height:0;flex-direction:column;background:#fff}.message-list{display:flex;flex-direction:column;gap:24px;flex:1;min-height:0;padding:0 24px;overflow-y:auto;scroll-behavior:auto}.message-list.is-new{justify-content:center}.message-list.has-messages{padding-top:28px}.chat-row{display:flex;width:min(900px,100%);margin:0 auto;align-items:flex-start}.chat-row.user{justify-content:flex-end}.chat-row.user .avatar{display:none}.chat-row.user .message-bubble{max-width:min(680px,88%)}.avatar{display:none}.assistant-stack{display:flex;width:100%;flex-direction:column;gap:12px;min-width:0}.message-bubble{width:fit-content;max-width:min(760px,100%);padding:12px 14px;border:1px solid transparent;border-radius:18px;background:#f4f4f5;color:#18181b;box-shadow:none}.message-bubble.assistant{width:min(900px,100%);padding:0;border:0;border-radius:0;background:transparent}.message-bubble.user{border-color:#f4f4f5;background:#f4f4f5;color:#18181b}.message-bubble p{margin:0}.thread-welcome{display:flex;width:min(760px,100%);margin:0 auto 24px;flex-direction:column;align-items:center;justify-content:center;text-align:center}.thread-welcome p{margin:0 0 10px;color:#71717a;font-size:13px;font-weight:620}.thread-welcome h2{margin:0;color:#18181b;font-size:44px;line-height:1.08;font-weight:640;letter-spacing:0}.message-attachments{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin-top:10px}.message-attachments:first-child{margin-top:0}.message-attachments img{display:block;width:100%;max-height:220px;object-fit:cover;border:1px solid rgba(255,255,255,.28);border-radius:8px}.muted{color:#667085}.inline-error{max-width:100%;margin:10px 0 0;overflow:auto;color:#a03b2d;white-space:pre-wrap}.reasoning-panel{width:min(900px,100%);margin:0 0 2px;color:#71717a}.reasoning-trigger{display:flex;align-items:center;gap:8px;width:fit-content;max-width:75%;padding:5px 0;cursor:pointer;color:#71717a;font-size:13px;font-weight:560;list-style:none;transition:color .16s ease,transform .16s ease}.reasoning-trigger:hover{color:#18181b}.reasoning-trigger:active{transform:scale(.98)}.reasoning-trigger::-webkit-details-marker{display:none}.reasoning-mark{position:relative;display:inline-block;width:15px;height:15px;flex:0 0 auto;border:1.5px solid currentColor;border-radius:999px}.reasoning-mark:before,.reasoning-mark:after{position:absolute;border-radius:999px;background:currentColor;content:""}.reasoning-mark:before{top:4px;left:4px;width:4px;height:4px}.reasoning-mark:after{right:3px;bottom:3px;width:3px;height:3px}.reasoning-panel.is-streaming .reasoning-label{animation:reasoning-pulse 1.2s ease-in-out infinite}.reasoning-chevron{width:7px;height:7px;flex:0 0 auto;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);transition:transform .18s ease}.reasoning-panel[open] .reasoning-chevron{transform:translateY(-2px) rotate(45deg)}.reasoning-content{position:relative;overflow:hidden}.reasoning-text{max-height:260px;margin:0;padding:6px 0 8px 23px;overflow:auto;border-left:1px solid #e4e4e7;color:#71717a;background:transparent;font-family:inherit;font-size:13px;line-height:1.6;white-space:pre-wrap}@keyframes reasoning-pulse{0%,to{opacity:.55}50%{opacity:1}}.assistant-canvas{width:min(900px,100%);overflow:hidden;border-radius:8px;background:transparent}.preview-frame{display:block;width:100%;min-height:180px;border:0;border-radius:8px;background:transparent;transition:height .16s ease}.assistant-canvas.streaming .preview-frame{transition:none}.error-panel{display:grid;gap:8px;padding:12px 16px;border-top:1px solid #f1d0cb;color:#7a271a;background:#fff6f3;font-size:13px}.error-panel ul{display:grid;gap:6px;margin:0;padding:0;list-style:none}.error-panel li{display:flex;gap:8px;align-items:baseline}.error-panel span{min-width:58px;color:#b42318;font-weight:760}.raw-stream-panel{width:min(900px,100%);margin:2px 0 0;overflow:hidden;color:#71717a}.raw-stream-trigger{display:flex;align-items:center;gap:8px;width:fit-content;max-width:100%;padding:4px 0;cursor:pointer;color:#a1a1aa;font-size:12px;font-weight:560;list-style:none;transition:color .16s ease,transform .16s ease}.raw-stream-trigger:hover{color:#52525b}.raw-stream-trigger:active{transform:scale(.98)}.raw-stream-trigger::-webkit-details-marker{display:none}.raw-stream-mark{position:relative;display:inline-block;width:15px;height:15px;flex:0 0 auto;border:1.5px solid currentColor;border-radius:4px}.raw-stream-mark:before{position:absolute;top:6px;left:3px;width:7px;height:1.5px;border-radius:999px;background:currentColor;content:""}.raw-stream-meta{color:#a1a1aa;font-variant-numeric:tabular-nums}.raw-stream-chevron{width:7px;height:7px;flex:0 0 auto;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);transition:transform .18s ease}.raw-stream-panel[open] .raw-stream-chevron{transform:translateY(-2px) rotate(45deg)}.raw-stream-text{max-height:260px;margin:0;padding:7px 0 10px 23px;overflow:auto;border-left:1px solid #e4e4e7;color:#52525b;background:transparent;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.45;white-space:pre-wrap}.composer-footer{z-index:2;width:min(760px,100%);margin:0 auto;background:transparent;pointer-events:none}.composer-footer.is-new{position:static;padding:0 0 4px}.composer-footer.has-messages{position:sticky;bottom:0;margin-top:auto;padding:10px 0 14px}.chat-input-bar{display:block;width:100%;border:0;background:transparent;pointer-events:auto}.chat-input-dropzone{display:flex;flex-direction:column;gap:8px;overflow:hidden;padding:8px;border:1px solid rgba(228,228,231,.72);border-radius:24px;background:#ffffffb8;backdrop-filter:blur(22px) saturate(1.35);-webkit-backdrop-filter:blur(22px) saturate(1.35);box-shadow:0 1px 2px #18181b0a,0 12px 36px #18181b1f;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease}.chat-input-dropzone:focus-within{border-color:#d4d4d8e0;background:#ffffffd1;box-shadow:0 1px 2px #18181b0a,0 16px 44px #18181b24}.chat-input-dropzone[data-dragging=true]{border-style:dashed;border-color:#a1a1aaeb;background:#f4f4f5c7}.chat-input-textarea{width:100%;min-height:42px;max-height:180px;resize:none;padding:8px 10px;border:0;border-radius:0;outline:none;color:#18181b;background:transparent;font-size:16px;line-height:1.45}.chat-input-textarea:focus{box-shadow:none}.chat-input-actions{display:flex;align-items:center;justify-content:space-between}.chat-input-action-group{display:flex;align-items:center;gap:6px}.attachment-tray{display:flex;gap:8px;max-width:100%;overflow-x:auto;padding-bottom:2px}.attachment-thumb{position:relative;flex:0 0 92px;width:92px;margin:0}.attachment-thumb img{display:block;width:92px;height:68px;object-fit:cover;border:1px solid #cdd8e7;border-radius:8px;background:#fff}.attachment-extension{display:grid;width:92px;height:68px;place-items:center;border:1px solid #cdd8e7;border-radius:8px;color:#526070;background:#fff;font-size:13px;font-weight:760}.attachment-thumb figcaption{margin-top:4px;overflow:hidden;color:#667085;font-size:11px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.attachment-remove{position:absolute;top:4px;right:4px;display:grid;width:22px;height:22px;place-items:center;border:1px solid rgba(15,23,42,.16);border-radius:999px;color:#0f172a;background:#ffffffeb;font-size:13px;font-weight:800}.attachment-error{margin:0;color:#b42318;font-size:12px}.attach-button,.send-button{display:grid;position:relative;width:32px;height:32px;place-items:center;border:0;border-radius:999px;color:#fff;background:#18181b;transition:transform .16s ease,background .16s ease,opacity .16s ease}.attach-button{color:#3f3f46;background:#f4f4f5}.attach-button:hover:not(:disabled){transform:translateY(-1px);background:#e4e4e7}.send-button:hover:not(:disabled){transform:translateY(-1px);background:#27272a}.cancel-button{background:#27272a}.attach-button:disabled,.send-button:disabled{cursor:not-allowed;opacity:.42}.plus-icon,.x-icon,.send-arrow-up,.stop-square{display:block;position:relative}.plus-icon,.x-icon{width:16px;height:16px}.plus-icon:before,.plus-icon:after,.x-icon:before,.x-icon:after{position:absolute;top:7px;left:2px;width:12px;height:2px;border-radius:999px;background:currentColor;content:""}.plus-icon:after{transform:rotate(90deg)}.x-icon:before{transform:rotate(45deg)}.x-icon:after{transform:rotate(-45deg)}.send-arrow-up{width:2px;height:16px;border-radius:999px;background:currentColor}.send-arrow-up:after{position:absolute;top:0;left:-4px;width:8px;height:8px;border-top:2px solid currentColor;border-left:2px solid currentColor;transform:rotate(45deg);content:""}.stop-square{width:10px;height:10px;border-radius:2px;background:currentColor}@media(max-width:720px){.app-shell{width:100vw;height:100vh;flex-direction:column;margin:0;border-right:0;border-left:0;border-radius:0}.history-sidebar{width:100%;min-width:0;max-height:148px;flex:0 0 auto;gap:8px;padding:10px 12px;border-right:0;border-bottom:1px solid #eceef2}.app-shell[data-theme=night] .history-sidebar{border-bottom-color:#ffffff1a}.new-session-button{min-height:36px}.session-list{flex-direction:row;overflow-x:auto;overflow-y:hidden;padding:0 0 2px}.session-list-item{width:180px;min-height:46px;flex:0 0 180px}.chat-workspace{flex:1;min-height:0}.app-header{align-items:flex-start;padding:14px 16px}.status-pill{display:none}.message-list{padding-right:16px;padding-left:16px}.message-list.has-messages{padding-top:18px}.thread-welcome{margin-bottom:20px}.thread-welcome h2{font-size:32px;line-height:1.12}.composer-footer.has-messages{bottom:0;padding:12px 0}.chat-input-dropzone{border-radius:22px}}
