html,body,#root{height:100%;margin:0}body{font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;background:#0a0f1d}:root{--bg0: #07080b;--bg1: #0b0d12;--surface: rgba(255, 255, 255, .05);--surface2: rgba(255, 255, 255, .035);--border: rgba(255, 255, 255, .1);--border2: rgba(255, 255, 255, .16);--text: rgba(255, 255, 255, .92);--muted: rgba(255, 255, 255, .62);--accent: #e2b85c;--accent2: #7dd3fc;--ok: #34d399;--shadow: 0 20px 70px rgba(0, 0, 0, .65);--radius-lg: 22px;--radius-md: 16px;--radius-sm: 12px;--blur: blur(14px)}*{box-sizing:border-box}.page{min-height:100vh;color:var(--text);background:radial-gradient(900px 520px at 15% 0%,rgba(226,184,92,.1),transparent 55%),radial-gradient(860px 520px at 90% 10%,rgba(125,211,252,.08),transparent 58%),radial-gradient(900px 720px at 50% 100%,rgba(255,255,255,.05),transparent 55%),linear-gradient(180deg,var(--bg0),var(--bg1));padding:26px 16px;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji"}.shell{max-width:1080px;margin:0 auto;width:100%}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.brand{display:flex;align-items:center;gap:12px;min-width:0}.logo{width:40px;height:40px;border-radius:14px;background:radial-gradient(12px 12px at 30% 30%,#ffffffb3,#fff0 60%),linear-gradient(135deg,#e2b85cf2,#7dd3fcb3);box-shadow:0 12px 30px #e2b85c1a;border:1px solid rgba(255,255,255,.14)}.brandText{min-width:0}.title{font-size:15px;font-weight:750;letter-spacing:.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.subtitle{font-size:12px;color:var(--muted);margin-top:2px}.topActions{display:flex;align-items:center;gap:10px}.chip{display:inline-flex;align-items:center;gap:10px;font-size:12px;padding:8px 12px;border-radius:999px;border:1px solid var(--border);background:#ffffff0a;-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);color:var(--muted)}.dot{width:8px;height:8px;border-radius:99px;background:#fff3}.dot.on{background:var(--ok);box-shadow:0 0 0 4px #34d3991f}.card{height:calc(100vh - 106px);min-height:600px;border-radius:var(--radius-lg);border:1px solid var(--border);background:linear-gradient(180deg,var(--surface),var(--surface2));box-shadow:var(--shadow);overflow:hidden;display:flex}.leftPane{flex:1;min-width:0;display:flex;flex-direction:column}.chat{flex:1;overflow:auto;padding:18px 16px 14px;display:flex;flex-direction:column;gap:12px}.row{display:flex;gap:10px;align-items:flex-end}.row.left{justify-content:flex-start}.row.right{justify-content:flex-end}.avatar{width:32px;height:32px;border-radius:12px;display:grid;place-items:center;font-size:11px;border:1px solid var(--border);background:#ffffff0a;color:#ffffffd1;flex:0 0 auto}.avatar.a{background:#7dd3fc1a;border-color:#7dd3fc38}.avatar.u{background:#e2b85c1a;border-color:#e2b85c38}.bubble.user{max-width:min(720px,150%);padding:12px 14px;border-radius:var(--radius-md);border:1px solid var(--border);line-height:1.5;white-space:pre-wrap;word-wrap:break-word;-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);transition:border-color .16s ease,transform .16s ease,background .16s ease}.bubble.assistant{max-width:min(720px,150%);padding:12px 14px;border-radius:var(--radius-md);border:1px solid var(--border);line-height:1.5;word-wrap:break-word;-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);transition:border-color .16s ease,transform .16s ease,background .16s ease}.bubble.assistant.hasBrowser{width:var(--browserW, 980px);max-width:none}.bubble.assistant.hasBrowser .browserCard{width:100%;max-width:none}.bubble.assistant{background:#ffffff09}.bubble.user{background:linear-gradient(135deg,#e2b85c2e,#7dd3fc1a);border-color:#ffffff1f}.bubble:hover{border-color:var(--border2)}.bubble.intro{background:linear-gradient(180deg,#ffffff0b,#ffffff08);border-color:#ffffff1f}.streamMeta{display:inline-flex;align-items:center;gap:10px;padding:7px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.1);background:#0000002e;color:#ffffffc2;font-size:12px;margin-bottom:8px}.streamLabel{white-space:nowrap}.cursor{display:inline-block;margin-left:2px;opacity:.85;animation:blink 1s steps(1) infinite}@keyframes blink{50%{opacity:.15}}.composer{border-top:1px solid var(--border);background:#0000002e;padding:12px 12px 10px}.composerInner{display:flex;gap:10px;align-items:flex-end}textarea{width:100%;resize:none;min-height:46px;max-height:160px;padding:12px;border-radius:var(--radius-md);border:1px solid var(--border);background:#ffffff09;color:var(--text);outline:none;line-height:1.35;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}textarea:focus{border-color:#e2b85c59;box-shadow:0 0 0 4px #e2b85c1a;background:#ffffff0b}.sendBtn{flex:0 0 auto;height:46px;padding:0 16px;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.14);color:#0a0a0ceb;background:linear-gradient(135deg,#e2b85cf2,#7dd3fcbf);cursor:pointer;font-weight:800;letter-spacing:.2px;box-shadow:0 14px 32px #e2b85c1a;transition:transform .12s ease,box-shadow .16s ease,opacity .16s ease}.sendBtn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 18px 40px #e2b85c1f}.sendBtn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.hintRow{margin-top:8px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 4px}.hint{font-size:12px;color:var(--muted)}.counter{font-size:12px;color:var(--muted);border:1px solid var(--border);background:#ffffff08;padding:6px 10px;border-radius:999px;min-width:46px;text-align:center;-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur)}.counter.warn{color:#ffd26ef2;border-color:#ffd26e47}.spinner{width:12px;height:12px;border-radius:50%;border:2px solid rgba(255,255,255,.22);border-top-color:#ffffffb3;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.dots{display:inline-flex;gap:4px;align-items:center;padding:2px 0}.dots i{width:6px;height:6px;border-radius:999px;background:#ffffff80;animation:dot 1.1s infinite ease-in-out}.dots i:nth-child(2){animation-delay:.15s}.dots i:nth-child(3){animation-delay:.3s}@keyframes dot{0%,80%,to{transform:translateY(0);opacity:.35}40%{transform:translateY(-4px);opacity:.9}}.bubble .md,.bubble .introMd{line-height:1.45;font-size:14px}.bubble .md *,.bubble .introMd *{margin:0}.bubble .md>*+*,.bubble .introMd>*+*{margin-top:.35em}.bubble .md>h1+*,.bubble .md>h2+*,.bubble .md>h3+*,.bubble .md>h4+*,.bubble .introMd>h1+*,.bubble .introMd>h2+*,.bubble .introMd>h3+*,.bubble .introMd>h4+*{margin-top:.25em}.bubble .md h1,.bubble .introMd h1{font-size:16px}.bubble .md h2,.bubble .introMd h2{font-size:15px}.bubble .md h3,.bubble .introMd h3{font-size:14px}.bubble .md h4,.bubble .introMd h4{font-size:13px;font-weight:760;color:#ffffffdb}.bubble .md p,.bubble .introMd p{margin:0}.bubble .md ul,.bubble .md ol,.bubble .introMd ul,.bubble .introMd ol{padding-left:1.1em}.bubble .md li,.bubble .introMd li{margin:.15em 0}.bubble .md li>p,.bubble .introMd li>p{margin:0}.bubble .md li>ul,.bubble .md li>ol,.bubble .introMd li>ul,.bubble .introMd li>ol{margin-top:.15em}.bubble .md a,.bubble .introMd a{color:#e2b85cfa;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .15s ease,opacity .15s ease}.bubble .md a:hover,.bubble .introMd a:hover{border-bottom-color:#e2b85c8c;opacity:.95}.bubble .md strong,.bubble .introMd strong{color:#fffffff5}.bubble .md em,.bubble .introMd em{color:#ffffffe0}.bubble .md code,.bubble .introMd code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.92em;padding:.12em .38em;border-radius:9px;border:1px solid rgba(255,255,255,.1);background:#ffffff0f}.bubble .md pre,.bubble .introMd pre{margin-top:.45em;padding:12px;overflow:auto;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:#00000047}.bubble .md pre code,.bubble .introMd pre code{padding:0;border:none;background:transparent;font-size:.9em}.bubble .md blockquote,.bubble .introMd blockquote{padding:.35em .8em;border-left:3px solid rgba(125,211,252,.6);background:#7dd3fc0f;border-radius:12px;color:#ffffffd6}.bubble .md hr,.bubble .introMd hr{border:none;border-top:1px solid rgba(255,255,255,.1);margin-top:.55em}.bubble .md table,.bubble .introMd table{width:100%;border-collapse:separate;border-spacing:0;margin-top:.55em;border-radius:14px;border:1px solid rgba(255,255,255,.1);overflow:hidden}.bubble .md th,.bubble .md td,.bubble .introMd th,.bubble .introMd td{padding:9px 10px;border-bottom:1px solid rgba(255,255,255,.08);text-align:left;vertical-align:top}.bubble .md th,.bubble .introMd th{background:#ffffff0f;font-weight:800;color:#ffffffeb}.bubble .md tr:last-child td,.bubble .introMd tr:last-child td{border-bottom:none}.bubble :is(.md,.introMd) :where(p,li,blockquote){text-align:justify;text-justify:inter-word;text-align-last:left;-webkit-hyphens:auto;hyphens:auto}.bubble :is(.md,.introMd) :where(h1,h2,h3,h4,pre,code,table){text-align:left}.bubble .md>ol,.bubble .introMd>ol{list-style:none;padding-left:0;counter-reset:item}.bubble .md>ol>li,.bubble .introMd>ol>li{counter-increment:item;display:grid;grid-template-columns:26px 1fr;column-gap:10px;align-items:start;margin:.35em 0}.bubble .md>ol>li:before,.bubble .introMd>ol>li:before{content:counter(item);width:22px;height:22px;margin-top:1px;border-radius:999px;display:grid;place-items:center;font-size:12px;font-weight:900;color:#0a0a0ceb;background:linear-gradient(135deg,#e2b85cf2,#7dd3fcb3);box-shadow:0 10px 22px #00000059}.bubble .md>*+*,.bubble .introMd>*+*{margin-top:.45em}.bubble .md>h1+*,.bubble .md>h2+*,.bubble .md>h3+*,.bubble .md>h4+*,.bubble .introMd>h1+*,.bubble .introMd>h2+*,.bubble .introMd>h3+*,.bubble .introMd>h4+*{margin-top:.5em}.bubble .md,.bubble .introMd{letter-spacing:.1px;text-rendering:optimizeLegibility}.bubble .md>ol>li,.bubble .introMd>ol>li{padding:10px 12px;border-radius:14px;background:#ffffff06;border:1px solid rgba(255,255,255,.08);transition:transform .14s ease,border-color .16s ease,background .16s ease}.bubble .md>ol>li:hover,.bubble .introMd>ol>li:hover{transform:translateY(-1px);border-color:#e2b85c38;background:#ffffff08}.bubble .md>ol>li:before,.bubble .introMd>ol>li:before{margin-top:2px}.bubble .md>ol>li>*+*,.bubble .introMd>ol>li>*+*{margin-top:.22em}.bubble .md a,.bubble .introMd a{position:relative;padding-bottom:1px}.bubble .md a:after,.bubble .introMd a:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;opacity:0;background:#e2b85c8c;transition:opacity .15s ease}.bubble .md a:hover:after,.bubble .introMd a:hover:after{opacity:1}.bubble .md li,.bubble .introMd li{line-height:1.55}.bubble .md>ol>li,.bubble .introMd>ol>li{grid-template-columns:26px minmax(0,1fr);grid-auto-flow:row}.bubble .md>ol>li:before,.bubble .introMd>ol>li:before{grid-column:1}.bubble .md>ol>li>*,.bubble .introMd>ol>li>*{grid-column:2;min-width:0}.bubble .md>ol>li>ul,.bubble .introMd>ol>li>ul{margin-left:2px}.bubble .md ul,.bubble .introMd ul{list-style:none;padding-left:0;margin-top:.45em}.bubble .md ul>li,.bubble .introMd ul>li{position:relative;padding-left:18px;margin:.28em 0;line-height:1.55}.bubble .md ul>li:before,.bubble .introMd ul>li:before{content:"";position:absolute;left:0;top:.72em;width:7px;height:7px;border-radius:999px;background:#7dd3fcd9;box-shadow:0 0 0 3px #7dd3fc1a,0 6px 16px #00000059}.bubble .md ul>li:hover,.bubble .introMd ul>li:hover{color:#fffffff5}.bubble .md ul>li:hover:before,.bubble .introMd ul>li:hover:before{background:#e2b85ceb;box-shadow:0 0 0 3px #e2b85c1f,0 10px 22px #00000073}.bubble .md ul ul,.bubble .introMd ul ul{margin-top:.18em;margin-left:14px}.bubble .md ul ul>li,.bubble .introMd ul ul>li{padding-left:16px;margin:.18em 0}.bubble .md ul ul>li:before,.bubble .introMd ul ul>li:before{width:6px;height:6px;opacity:.8;box-shadow:0 0 0 3px #7dd3fc14}.browserCard{width:min(600px,60%);border-radius:16px;border:1px solid rgba(255,255,255,.1);background:#00000038;overflow:hidden;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 12px 40px #00000052;margin:10px 0 8px}.browserCardHeader{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;font-size:12px;color:#ffffffa6;border-bottom:1px solid rgba(255,255,255,.1);background:#ffffff08}.browserCardUrl{opacity:.85;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}.browserCardFrameWrap{width:100%;aspect-ratio:4 / 3;overflow:hidden;background:#00000040}.browserCardFrame{border:0;transform-origin:0 0;transform:scale(var(--browserScale, .45));width:calc(100% / var(--browserScale, .45));height:calc(100% / var(--browserScale, .45))}.bubble :where(.md,.introMd){font-size:13.5px;line-height:1.45;color:#ffffffe6;letter-spacing:.1px}
