.chat-root{height:100vh;height:100dvh;display:grid;grid-template-columns:260px minmax(0,1fr);overflow:hidden;font-size:14px;background:var(--bg);transition:grid-template-columns .28s cubic-bezier(.2,.7,.2,1)}.chat-root.rail-open{grid-template-columns:260px minmax(0,1fr) 296px}.side{display:flex;flex-direction:column;min-height:0;background:#101014;border-right:1px solid var(--line)}.side-top{gap:10px;padding:16px 16px 14px}.newchat,.side-top{display:flex;align-items:center}.newchat{justify-content:center;gap:8px;height:36px;margin:0 12px 12px;border:1px solid var(--line-2);border-radius:10px;color:var(--fg);font-size:13.5px;font-weight:550;transition:border-color .15s,background-color .15s}.newchat:hover{border-color:var(--acc-line);background:var(--acc-dim)}.search{display:flex;align-items:center;gap:8px;height:32px;margin:0 12px 10px;padding:0 2px;border-bottom:1px solid var(--line);color:var(--fg-3);font-size:13px;transition:border-color .15s}.search:focus-within{border-bottom-color:var(--acc-line)}.search input{flex:1 1;min-width:0;border:0;background:transparent;outline:none;color:var(--fg)}.search input::placeholder{color:var(--fg-3)}.hist{flex:1 1;min-height:0;overflow:auto;padding:2px 10px 8px;scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}.hist h2{margin:14px 6px 6px;font-size:10.5px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--fg-3)}.hist-item{display:flex;align-items:center;border-radius:8px}.hist-item>button:first-child{flex:1 1;min-width:0;padding:7px 9px;border-radius:8px;text-align:left;color:var(--fg-2);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background-color .12s,color .12s}.hist-item>button:first-child:hover{background:rgba(255,255,255,.04);color:var(--fg)}.hist-item.on>button:first-child{background:var(--panel-2);color:var(--fg)}.hist-item .del{flex:none;width:26px;height:26px;border-radius:6px;color:var(--fg-3);opacity:0;font-size:14px}.hist-item .del:focus-visible,.hist-item:hover .del{opacity:1}.hist-item .del:hover{background:rgba(255,255,255,.05);color:var(--fg)}.hist-empty{padding:8px;font-size:12.5px;color:var(--fg-3)}.side-foot{padding:13px 14px 14px;border-top:1px solid var(--line)}.zdr-note{display:flex;gap:8px;align-items:flex-start;font-size:11.5px;line-height:1.5;color:var(--fg-3)}.zdr-note i{flex:none;width:6px;height:6px;margin-top:6px;border-radius:50%;background:var(--acc);box-shadow:0 0 8px var(--acc-glow)}.zdr-note b{color:var(--fg-2);font-weight:600}.side-links{display:flex;flex-wrap:wrap;gap:2px 12px;margin:10px 0 0;font-size:12px;color:var(--fg-3)}.side-links a:hover{color:var(--fg)}.keyrow{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;font-size:12px;color:var(--fg-3)}.keyrow span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.keyrow button{color:var(--acc);font-weight:500;white-space:nowrap}.main{display:grid;grid-template-rows:52px minmax(0,1fr) auto;min-width:0;min-height:0}.head{display:flex;align-items:center;gap:8px;padding:0 22px;border-bottom:1px solid var(--line)}.head h1{margin-right:6px;font-size:13.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis}.chip,.head h1{white-space:nowrap}.chip{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 10px;border-radius:999px;background:var(--panel-2);font:11.5px var(--mono);color:var(--fg-2)}.chip.acc{background:var(--acc-dim);color:var(--acc)}.chip i{width:5px;height:5px;border-radius:50%;background:var(--acc)}.head-r{display:flex;gap:6px;margin-left:auto}.gbtn{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 11px;border-radius:999px;font-size:12.5px;color:var(--fg-3);white-space:nowrap;transition:color .12s,background-color .12s}.gbtn:hover{color:var(--fg);background:var(--panel-2)}.thread{min-height:0;overflow:auto;padding:30px 24px 12px;scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}.thread-in{display:flex;flex-direction:column;gap:24px;max-width:780px;margin:0 auto}.empty{display:grid;grid-gap:12px;gap:12px;justify-items:center;text-align:center;padding:13vh 0 0;color:var(--fg-2)}.empty h2{font-size:21px;font-weight:650;letter-spacing:-.02em;color:var(--fg)}.empty p{max-width:52ch;font-size:13px}.empty p code{padding:1px 6px;border:1px solid var(--line);border-radius:5px;background:var(--panel);font-size:11.5px;color:var(--fg)}.empty .sugs{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:6px}.empty .sugs button{max-width:320px;padding:8px 13px;border:1px solid var(--line);border-radius:999px;background:rgba(19,19,23,.5);font-size:12.5px;color:var(--fg-2);transition:border-color .15s,color .15s}.empty .sugs button:hover{border-color:var(--acc-line);color:var(--fg)}.empty .err{max-width:60ch}.msg{display:grid;grid-gap:6px;gap:6px}.msg.me{justify-items:end}.msg.me .bub{max-width:80%;padding:10px 15px;border-radius:16px 16px 4px 16px;background:var(--panel-2);white-space:pre-wrap;overflow-wrap:anywhere}.body{font-size:14.5px;line-height:1.7;min-width:0}.body p{margin:0;overflow-wrap:anywhere}.body .codeblk+p,.body p+.codeblk,.body p+.mdtable,.body p+blockquote,.body p+hr,.body p+ol,.body p+p,.body p+ul{margin-top:10px}.body .md-h{margin:16px 0 6px;font-weight:650;line-height:1.35;color:var(--fg)}.body .md-h:first-child{margin-top:0}.body h3.md-h{font-size:16px;letter-spacing:-.01em}.body h4.md-h{font-size:14.5px}.body h5.md-h,.body h6.md-h{font-size:13px;color:var(--fg-2)}.body ol,.body ul{margin:8px 0;padding-left:22px;display:grid;grid-gap:4px;gap:4px}.body ul{list-style:disc}.body ol{list-style:decimal}.body li::marker{color:var(--fg-3)}.body li>.mdsub{margin:4px 0 0}.body li.task{display:flex;gap:8px;align-items:baseline;list-style:none;margin-left:-22px}.body li.task input{flex:none;width:13px;height:13px;margin-top:3px;accent-color:var(--acc)}.body li.task.done{color:var(--fg-3);text-decoration:line-through;-webkit-text-decoration-color:var(--line-3);text-decoration-color:var(--line-3)}.body blockquote{margin:10px 0;padding:9px 14px;border-left:2px solid var(--acc);border-radius:0 10px 10px 0;background:var(--acc-dim);color:var(--fg-2)}.body blockquote p{margin:0}.body .mdtable{margin:10px 0;border:1px solid var(--line);border-radius:10px;overflow-x:auto}.body table{width:100%;border-collapse:collapse;font-size:13px}.body td,.body th{padding:8px 12px;border-bottom:1px solid var(--line);text-align:left}.body th{font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);background:rgba(255,255,255,.02)}.body tr:last-child td{border-bottom:0}.body hr{margin:14px 0;border:0;border-top:1px solid var(--line-2)}.body a{color:var(--acc);text-decoration:underline;-webkit-text-decoration-color:rgba(255,42,61,.4);text-decoration-color:rgba(255,42,61,.4);text-underline-offset:3px}.body a:hover{color:var(--acc-2);-webkit-text-decoration-color:var(--acc-2);text-decoration-color:var(--acc-2)}.body code{padding:1px 6px;border:1px solid var(--line);border-radius:5px;background:var(--panel);font-size:.92em;color:var(--fg)}.body .codeblk{margin:10px 0}.body .codeblk code{padding:0;border:0;background:none;font-size:12.5px}.body .err{padding:10px 14px;border:1px solid rgba(255,42,61,.4);border-radius:10px;background:var(--acc-dim);color:var(--fg);font-size:13px}.demolink{justify-self:center;margin-top:10px;padding:7px 14px;border:1px dashed var(--line-2);border-radius:999px;font-size:12px;color:var(--fg-2);transition:color .15s,border-color .15s}.demolink:hover{color:var(--acc);border-color:var(--acc-line)}.caret{display:inline-block;width:8px;height:1em;margin-left:2px;vertical-align:-2px;background:var(--acc);animation:blink 1s steps(1) infinite}@keyframes blink{50%{opacity:0}}.meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;margin-top:2px;font:11px var(--mono);color:var(--fg-3)}.meta .ok{color:var(--acc)}.acts{display:flex;gap:2px;margin-left:auto;opacity:.55;transition:opacity .15s}.acts:focus-within,.msg:hover .acts{opacity:1}.acts button{display:grid;place-items:center;width:24px;height:24px;border-radius:6px;color:var(--fg-3);transition:background-color .12s,color .12s}.acts button:hover{background:var(--panel-2);color:var(--fg)}.thinking{display:inline-flex;gap:5px;padding:12px 2px}.thinking i{width:6px;height:6px;border-radius:50%;background:var(--acc);opacity:.3;animation:th 1.15s ease-in-out infinite}.thinking i:nth-child(2){animation-delay:.15s}.thinking i:nth-child(3){animation-delay:.3s}@keyframes th{0%,to{opacity:.25;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}.mdimg{position:relative;display:block;width:100%;padding:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--panel);cursor:zoom-in;transition:border-color .15s}.mdimg:hover{border-color:var(--line-3)}.mdimg img{display:block;width:100%;max-height:380px;object-fit:cover;opacity:0;transition:opacity .45s ease}.mdimg img.on{opacity:1}.mdimg-skel{display:block;aspect-ratio:16/10;width:100%;background:linear-gradient(100deg,var(--panel-2) 40%,rgba(255,255,255,.05) 50%,var(--panel-2) 60%);background-size:200% 100%;animation:skel 1.2s linear infinite}@keyframes skel{to{background-position:-200% 0}}.mdimg-err{display:grid;place-items:center;aspect-ratio:16/10;padding:0 14px;font-size:12px;color:var(--fg-3);text-align:center;overflow-wrap:anywhere}.mdimg-err b{color:var(--fg-2);font-weight:500}.mdgal{display:grid;grid-gap:8px;gap:8px;margin:10px 0}.mdgal .mdimg img{max-height:230px}.mdgal:has(>:nth-child(2)){grid-template-columns:repeat(2,1fr)}.mdgal:has(>:nth-child(3)){grid-template-columns:repeat(3,1fr)}.body p .mdimg{display:inline-block;width:auto;max-width:100%;vertical-align:middle}.body p .mdimg img{max-height:210px}.lightbox{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:4vh 4vw;background:rgba(0,0,0,.82);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:zoom-out;animation:lbin .2s ease}.lightbox img{max-width:100%;max-height:88vh;border:1px solid var(--line-2);border-radius:12px;box-shadow:0 40px 120px rgba(0,0,0,.7);animation:lbzoom .26s cubic-bezier(.2,.7,.2,1)}.lb-close{position:fixed;top:18px;right:22px;width:36px;height:36px;border:1px solid var(--line-2);border-radius:999px;background:rgba(14,14,17,.6);color:var(--fg-2);font-size:13px}.lb-close:hover{color:var(--fg);border-color:var(--line-3)}@keyframes lbin{0%{opacity:0}}@keyframes lbzoom{0%{transform:scale(.94);opacity:0}}.mdvideo{margin:10px 0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#101014}.mdvideo video{display:block;width:100%;max-height:400px}.composer{padding:10px 24px calc(16px + env(safe-area-inset-bottom))}.box{max-width:780px;margin:0 auto;border:1px solid var(--line-2);border-radius:14px;background:var(--panel);box-shadow:0 12px 34px -22px rgba(0,0,0,.85);transition:border-color .15s}.box:focus-within{border-color:var(--acc-line)}.box textarea{display:block;width:100%;min-height:56px;max-height:220px;padding:14px 16px 2px;border:0;background:transparent;font:14.5px/1.5 var(--sans);resize:vertical;outline:none}.box textarea::placeholder{color:var(--fg-3)}.tools{display:flex;gap:4px;padding:4px 8px 8px 10px}.sel,.tools{align-items:center}.sel{position:relative;display:inline-flex}.sel select{height:28px;padding:0 24px 0 10px;border:0;border-radius:8px;background:transparent;font:12px var(--mono);color:var(--fg-2);cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;transition:color .12s,background-color .12s}.sel select:hover{color:var(--fg);background:var(--panel-2)}.sel:after{content:"▾";position:absolute;right:9px;font-size:9px;color:var(--fg-3);pointer-events:none}.send{display:grid;place-items:center;width:32px;height:32px;margin-left:auto;border-radius:50%;background:var(--acc);color:var(--acc-ink);transition:background-color .12s,transform .12s}.send:hover{background:var(--acc-2)}.send:active{transform:scale(.96)}.send:disabled{opacity:.45;cursor:default}.send.stop{background:var(--panel-2);color:var(--fg)}.hint{display:flex;justify-content:center;max-width:780px;margin:8px auto 0;font-size:11px;color:var(--fg-3)}.rail{display:none;min-height:0;overflow:auto;border-left:1px solid var(--line);scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}@media (min-width:1281px){.chat-root.rail-open .rail{display:block;animation:railin .3s cubic-bezier(.2,.7,.2,1)}}@keyframes railin{0%{opacity:0;transform:translateX(10px)}to{opacity:1;transform:none}}.gbtn.details[aria-pressed=true]{color:var(--fg);background:var(--panel-2)}.sec{padding:16px 18px 15px;border-bottom:1px solid var(--line)}.sec h2{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 10px;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3)}.sec h2 a{font:12px var(--sans);letter-spacing:0;text-transform:none;color:var(--acc)}.kv{display:grid;grid-gap:7px;gap:7px}.kv div{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:12.5px}.kv dt{color:var(--fg-3)}.kv dd{font:12px var(--mono);color:var(--fg);text-align:right;overflow-wrap:anywhere}.kv dd.ok{color:var(--acc)}.kv dd.dim{color:var(--fg-3)}.model-name{display:flex;align-items:baseline;gap:8px;margin-bottom:10px}.model-name b{font:600 13.5px var(--mono)}.model-name span{font-size:11.5px;color:var(--fg-3)}.sw{position:relative;display:inline-block;width:28px;height:16px;border-radius:999px;background:var(--acc);vertical-align:middle}.sw:after{content:"";position:absolute;right:2px;top:2px;width:12px;height:12px;border-radius:50%;background:var(--acc-ink)}.rail-note{padding:14px 18px;font-size:11.5px;line-height:1.55;color:var(--fg-3)}.rail-note a{color:var(--fg-2);text-decoration:underline;-webkit-text-decoration-color:var(--line-3);text-decoration-color:var(--line-3);text-underline-offset:3px}.rail-note a:hover{color:var(--acc)}.connect-wrap{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.6)}.connect{width:min(100%,440px);padding:22px;border:1px solid var(--line-2);border-radius:16px;background:var(--panel);box-shadow:0 30px 80px rgba(0,0,0,.6)}.connect h2{font-size:18px;font-weight:650;letter-spacing:-.02em}.connect p{margin-top:6px;color:var(--fg-2);font-size:13px}.connect input{width:100%;height:40px;margin-top:14px;padding:0 12px;border:1px solid var(--line-2);border-radius:10px;background:var(--bg);font:13px var(--mono);outline:none}.connect input:focus{border-color:var(--acc-line)}.connect .row{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:14px}.connect .row a{color:var(--fg-3);font-size:12.5px}.connect .row a:hover{color:var(--fg)}.connect .warn{margin-top:10px;font-size:12px;color:var(--acc)}.menu{display:none;position:relative}.menu summary{list-style:none;cursor:pointer;display:grid;place-items:center;width:34px;height:34px;border-radius:8px;color:var(--fg-2)}.menu summary:hover{background:var(--panel-2);color:var(--fg)}.menu summary::-webkit-details-marker{display:none}.menu[open] summary{position:fixed;left:292px;top:9px;z-index:31;background:var(--bg)}.menu[open]:before{content:"";position:fixed;inset:0;z-index:29;background:rgba(0,0,0,.55)}.drawer{position:fixed;left:0;top:0;bottom:0;z-index:30;display:flex;flex-direction:column;width:280px;padding:14px 12px;background:#101014;border-right:1px solid var(--line-2);overflow:auto}.drawer .brand{padding:0 2px 12px}.drawer .newchat{width:100%;margin:0 0 12px}.drawer .hist{flex:1 1;padding:0}.drawer .side-links{margin-top:auto;padding-top:12px;border-top:1px solid var(--line)}@media (max-width:1280px){.chat-root,.chat-root.rail-open{grid-template-columns:260px minmax(0,1fr)}.head-r .gbtn.details,.rail{display:none}}@media (max-width:900px){.chat-root{grid-template-columns:minmax(0,1fr)}.side{display:none}.menu{display:block}.head{padding:0 14px;gap:8px}.head .chip.model,.head-r .gbtn.export{display:none}.thread{padding:22px 14px 8px}.composer{padding-inline:12px}.msg.me .bub{max-width:92%}}@media (max-width:560px){.head .chip.policy,.tools .sel.effort,.tools .sel.policy{display:none}}.think{margin:0 0 10px;border:1px dashed var(--line-2);border-radius:12px;background:rgba(14,14,17,.5);overflow:hidden}.think.live{border-color:var(--acc-line);background:rgba(255,42,61,.04)}.think-head{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:0;background:none;font-size:12px;color:var(--fg-3);text-align:left;cursor:pointer}.think-head:hover{color:var(--fg-2)}.think-ico{color:var(--acc);font-size:11px}.think.live .think-ico{animation:breathe 2s ease-in-out infinite}.think-label{font-weight:550}.think.live .think-label{color:var(--fg-2)}.think-dots{display:inline-flex;gap:4px}.think-dots i{width:4px;height:4px;border-radius:50%;background:var(--acc);opacity:.3;animation:th 1.15s ease-in-out infinite}.think-dots i:nth-child(2){animation-delay:.15s}.think-dots i:nth-child(3){animation-delay:.3s}.think-chev{margin-left:auto;color:var(--fg-3);transition:transform .2s}.think.open .think-chev{transform:rotate(180deg)}.think-body{max-height:280px;overflow:auto;padding:2px 14px 12px;border-top:1px dashed var(--line-2);font-size:12.5px;line-height:1.65;color:var(--fg-3);scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}.think.live .think-body{border-top-color:rgba(255,42,61,.3)}.think-body p{margin:6px 0}.msg{animation:msgin .38s cubic-bezier(.2,.7,.2,1) both}@keyframes msgin{0%{opacity:0;transform:translateY(10px)}}.body>*{animation:blk .45s cubic-bezier(.2,.7,.2,1) both}@keyframes blk{0%{opacity:0;transform:translateY(7px)}}.body .md-h{display:flex;align-items:flex-start;gap:9px}.body .md-h:before{content:"";flex:none;width:12px;height:2px;margin-top:.62em;border-radius:2px;background:var(--acc);box-shadow:0 0 8px var(--acc-glow);animation:dash .55s cubic-bezier(.6,.05,.2,1) both;transform-origin:left center}@keyframes dash{0%{transform:scaleX(0);opacity:0}}.body li{animation:liin .32s cubic-bezier(.2,.7,.2,1) both}.body li:nth-child(2){animation-delay:.04s}.body li:nth-child(3){animation-delay:.08s}.body li:nth-child(4){animation-delay:.12s}.body li:nth-child(5){animation-delay:.16s}.body li:nth-child(6),.body li:nth-child(n+7){animation-delay:.2s}@keyframes liin{0%{opacity:0;transform:translateX(-6px)}}.body li.task input{animation:pop .34s cubic-bezier(.2,.9,.3,1.4) both}@keyframes pop{0%{transform:scale(0)}}.body .mdtable tbody tr{animation:liin .3s both}.body .mdtable tbody tr:nth-child(2){animation-delay:.05s}.body .mdtable tbody tr:nth-child(3){animation-delay:.1s}.body .mdtable tbody tr:nth-child(4),.body .mdtable tbody tr:nth-child(n+5){animation-delay:.15s}.body blockquote{animation:quotein .42s cubic-bezier(.2,.7,.2,1) both}@keyframes quotein{0%{opacity:0;transform:translateX(-10px)}}.body hr{animation:wipe .5s cubic-bezier(.6,.05,.2,1) both;transform-origin:left center}@keyframes wipe{0%{transform:scaleX(0);opacity:0}}.body .caret{box-shadow:0 0 10px var(--acc-glow);animation:blink 1s steps(1) infinite,breathe 2.2s ease-in-out infinite}.empty>*{animation:blk .5s cubic-bezier(.2,.7,.2,1) both}.empty>:nth-child(2){animation-delay:.07s}.empty>:nth-child(3){animation-delay:.14s}.empty>:nth-child(4){animation-delay:.21s}.empty>:nth-child(5){animation-delay:.28s}.empty>:nth-child(6){animation-delay:.35s}.demolink{animation:breatheGlow 3.4s ease-in-out 1s infinite}@keyframes breatheGlow{0%,to{border-color:var(--line-2)}50%{border-color:var(--acc-line);box-shadow:0 0 18px -8px var(--acc-glow)}}