:root{--text:#1c1c1e;--text-soft:#1c1c1ea3;--text-faint:#1c1c1e66;--glass-bg:#ffffff6b;--glass-bg-strong:#ffffff9e;--glass-hover:#ffffff8c;--glass-line:#ffffff8c;--glass-rim-a:#fffffff2;--glass-rim-b:#ffffff26;--glass-shadow:0 10px 40px #28325a1f, 0 2px 6px #28325a0f;--glass-inner:inset 0 1px 1px #ffffffb3, inset 0 -1px 1px #ffffff26;--glass-blur:blur(22px) saturate(180%);--divider:#1c1c1e14;--bg-base:#eef1f7;--edge-top:#cddcfb;--edge-bottom:#f1d6e6;--blob-1:#a8c8ff;--blob-2:#f6b8d8;--blob-3:#b6ecd9;--accent:#1c1c1e;--accent-text:#fff;--code-bg:#ffffff80;--danger:#d93025;--ok:#34c759;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--edge-bottom);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,sans-serif;font-size:15px;line-height:1.65}@media (prefers-color-scheme:dark){:root{--text:#f2f2f7;--text-soft:#f2f2f7a8;--text-faint:#f2f2f761;--glass-bg:#28283461;--glass-bg-strong:#2c2c3a9e;--glass-hover:#ffffff1a;--glass-line:#ffffff1f;--glass-rim-a:#ffffff59;--glass-rim-b:#ffffff0a;--glass-shadow:0 10px 40px #00000059, 0 2px 6px #0003;--glass-inner:inset 0 1px 1px #ffffff24, inset 0 -1px 1px #ffffff08;--divider:#ffffff14;--bg-base:#0e0f15;--edge-top:#17234b;--edge-bottom:#2a1531;--blob-1:#2a4a9a;--blob-2:#7a2a6a;--blob-3:#1d6a5a;--accent:#f2f2f7;--accent-text:#111114;--code-bg:#00000047;--danger:#ff6b5f;--ok:#30d158;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}#root{position:fixed;top:0;left:0;right:0}html.standalone .backdrop{height:100%}html.standalone .app{--safe-bottom:0px}:root{--screen-h:100dvh}body{overscroll-behavior:none;background:0 0;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}button:focus-visible,textarea:focus-visible{outline:2px solid var(--text-soft);outline-offset:2px}.backdrop{height:calc(100lvh + env(safe-area-inset-top,0px));z-index:-1;background:linear-gradient(var(--edge-top) 0%, var(--bg-base) 38%, var(--bg-base) 62%, var(--edge-bottom) 100%);min-height:100%;position:fixed;top:0;left:0;right:0;overflow:hidden}.backdrop:after{content:"";background:linear-gradient(var(--edge-top) 0%, transparent 14%, transparent 80%, var(--edge-bottom) 100%);position:absolute;inset:0}.edge-tint{z-index:-1;pointer-events:none;height:2px;position:fixed;left:0;right:0}.edge-tint.top{background-color:var(--edge-top);top:0}.edge-tint.bottom{background-color:var(--edge-bottom);bottom:0}.backdrop span{filter:blur(80px);opacity:.75;border-radius:50%;width:55vmax;height:55vmax;animation:26s ease-in-out infinite alternate drift;position:absolute}.backdrop span:first-child{background:var(--blob-1);top:-20vmax;left:-10vmax}.backdrop span:nth-child(2){background:var(--blob-2);animation-duration:32s;animation-delay:-8s;bottom:-25vmax;right:-15vmax}.backdrop span:nth-child(3){background:var(--blob-3);opacity:.6;width:38vmax;height:38vmax;animation-duration:38s;animation-delay:-16s;top:25%;left:35%}@keyframes drift{0%{transform:translate(0)scale(1)}50%{transform:translate(8vmax,6vmax)scale(1.08)}to{transform:translate(-6vmax,10vmax)scale(.95)}}.glass,.new-chat,.suggestions button,.send-btn{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow), var(--glass-inner);position:relative}.glass:before,.new-chat:before,.suggestions button:before,.send-btn:before{content:"";border-radius:inherit;background:linear-gradient(135deg, var(--glass-rim-a) 0%, var(--glass-rim-b) 35%, var(--glass-rim-b) 65%, var(--glass-rim-a) 100%);-webkit-mask-composite:xor;pointer-events:none;padding:1px;position:absolute;inset:0;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.glass,.new-chat,.suggestions button{background:var(--glass-bg-strong)}}.app{--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--gutter:12px;height:100%;padding:calc(var(--gutter) + var(--safe-top)) calc(var(--gutter) + var(--safe-right)) calc(var(--gutter) + var(--safe-bottom)) calc(var(--gutter) + var(--safe-left));gap:12px;display:flex}.main{--topbar-h:64px;flex-direction:column;flex:1;min-width:0;height:100%;display:flex;position:relative}.sidebar{border-radius:24px;flex-direction:column;flex-shrink:0;gap:12px;width:260px;padding:14px 10px;display:flex}.new-chat{box-shadow:var(--glass-inner);border-radius:14px;align-items:center;gap:8px;padding:10px 14px;font-weight:500;transition:background .2s,transform .2s;display:flex}.new-chat:hover{background:var(--glass-hover)}.new-chat:active{transform:scale(.98)}.conv-list{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;touch-action:pan-y;flex-direction:column;flex:1;gap:2px;min-height:0;display:flex;overflow-y:auto}.conv-empty{color:var(--text-faint);margin:8px 12px;font-size:13px}.conv-item{border-radius:12px;align-items:center;transition:background .2s;display:flex}.conv-item:hover{background:var(--glass-hover)}.conv-item.active{background:var(--glass-bg-strong);box-shadow:var(--glass-inner), 0 2px 8px #28325a0f}.conv-title{text-align:left;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;padding:8px 12px;font-size:14px;overflow:hidden}.conv-delete{width:30px;height:30px;color:var(--text-faint);opacity:0;border-radius:8px;place-items:center;margin-right:4px;transition:opacity .15s,color .15s;display:grid}.conv-item:hover .conv-delete,.conv-item.active .conv-delete,.conv-delete:focus-visible{opacity:1}.conv-delete:hover{color:var(--danger)}.settings-btn{text-align:left;color:var(--text-soft);border-radius:14px;align-items:center;gap:10px;padding:8px 12px;transition:background .2s;display:flex}.settings-btn:hover{background:var(--glass-hover)}.settings-text{min-width:0;color:var(--text);flex-direction:column;font-size:14px;line-height:1.35;display:flex}.settings-text small{color:var(--text-faint);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;font-size:12px;display:flex;overflow:hidden}.dot{background:var(--text-faint);border-radius:50%;flex-shrink:0;width:6px;height:6px}.dot.on{background:var(--ok);box-shadow:0 0 6px var(--ok)}.scrim{display:none}.dialog{width:min(480px,100vw - 32px);max-height:calc(min(var(--screen-h), 100dvh) - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 32px);color:var(--text);background:var(--glass-bg-strong);border:none;border-radius:28px;padding:0;overflow:hidden}.dialog[open]{animation:.22s cubic-bezier(.2,.9,.3,1.2) pop}@keyframes pop{0%{opacity:0;transform:scale(.94)}}.dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#14141e2e}.dialog-body{max-height:inherit;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;flex-direction:column;gap:14px;padding:24px;display:flex;overflow-y:auto}.dialog-body h2{margin:0;font-size:19px}.dialog-desc{color:var(--text-soft);margin:-6px 0 0;font-size:13px}.dialog-note{background:var(--glass-bg);box-shadow:var(--glass-inner);color:var(--text-soft);border-radius:14px;margin:0;padding:10px 12px;font-size:12px;line-height:1.6}.presets{flex-wrap:wrap;gap:6px;display:flex}.presets button{color:var(--text-soft);background:var(--glass-bg);box-shadow:var(--glass-inner);border-radius:999px;padding:5px 13px;font-size:13px;transition:background .2s,color .2s}.presets button:hover{background:var(--glass-hover);color:var(--text)}.presets button.active{background:var(--accent);color:var(--accent-text)}.field{flex-direction:column;gap:6px;font-size:13px;font-weight:500;display:flex}.field-row{gap:6px;display:flex}.field input,.field textarea{border:1px solid var(--glass-line);background:var(--glass-bg);min-width:0;color:var(--text);font:inherit;resize:vertical;border-radius:14px;flex:1;padding:10px 13px;font-size:14px;font-weight:400;transition:border-color .2s,background .2s;box-shadow:inset 0 1px 3px #0000000d}.field input:focus,.field textarea:focus{border-color:var(--text-faint);background:var(--glass-bg-strong);outline:none}.dialog-actions{justify-content:flex-end;gap:8px;display:flex}.ghost-btn,.primary-btn{border-radius:999px;padding:9px 18px;font-size:14px;transition:background .2s,transform .15s}.ghost-btn{background:var(--glass-bg);box-shadow:var(--glass-inner);color:var(--text-soft)}.ghost-btn:hover{background:var(--glass-hover)}.primary-btn{background:var(--accent);color:var(--accent-text);font-weight:500}.ghost-btn:active,.primary-btn:active{transform:scale(.97)}.topbar{z-index:5;border-radius:999px;align-items:center;gap:6px;width:min(760px,100%);height:52px;padding:0 8px;display:flex;position:absolute;top:0;left:50%;transform:translate(-50%)}.topbar-title{text-align:center;white-space:nowrap;text-overflow:ellipsis;flex:1;margin:0;padding:0 12px;font-size:15px;font-weight:600;overflow:hidden}.icon-btn{width:38px;height:38px;color:var(--text-soft);border-radius:50%;place-items:center;transition:background .2s;display:grid}.icon-btn:hover{background:var(--glass-hover)}.mobile-only{display:none}.welcome{padding:var(--topbar-h) 16px var(--composer-h,120px);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:26px;display:flex}.welcome h2{letter-spacing:-.01em;margin:0;font-size:28px;font-weight:600}.suggestions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;max-width:560px;display:grid}.suggestions button{text-align:left;color:var(--text-soft);border-radius:18px;padding:14px 16px;font-size:14px;transition:background .2s,color .2s,transform .2s}.suggestions button:hover{background:var(--glass-hover);color:var(--text);transform:translateY(-2px)}.messages{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;touch-action:pan-y;flex:1;min-height:0;overflow-y:auto}.messages-inner{max-width:760px;padding:calc(var(--topbar-h) + 20px) 20px calc(var(--composer-h,120px) + 12px);flex-direction:column;gap:26px;margin:0 auto;display:flex}.msg-user{justify-content:flex-end;display:flex}.bubble{background:var(--glass-bg-strong);white-space:pre-wrap;word-break:break-word;border-radius:22px 22px 6px;max-width:80%;padding:10px 16px}.msg-assistant{word-break:break-word}.msg-assistant.error .markdown{color:var(--danger)}.msg-actions{gap:4px;margin-top:6px;margin-left:-8px;display:flex}.msg-action{color:var(--text-faint);border-radius:999px;align-items:center;gap:5px;padding:4px 10px;font-size:12.5px;transition:background .2s,color .2s;display:inline-flex}.msg-action:hover{background:var(--glass-bg);color:var(--text)}.typing{gap:5px;padding:8px 0;display:flex}.typing span{background:var(--text-faint);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite bounce}.typing span:nth-child(2){animation-delay:.15s}.typing span:nth-child(3){animation-delay:.3s}@keyframes bounce{0%,80%,to{opacity:.4;transform:translateY(0)}40%{opacity:1;transform:translateY(-5px)}}.reasoning{margin-bottom:12px}.reasoning.open{margin-bottom:20px}.reasoning-toggle{color:var(--text-soft);background:var(--glass-bg);box-shadow:var(--glass-inner);border-radius:999px;align-items:center;gap:4px;padding:4px 12px 4px 14px;font-size:13px;transition:color .2s,background .2s;display:inline-flex}.reasoning-toggle:hover{color:var(--text);background:var(--glass-hover)}.reasoning-toggle svg{transition:transform .2s}.reasoning.open .reasoning-toggle svg{transform:rotate(90deg)}.reasoning-toggle.thinking span{background:linear-gradient(90deg, var(--text-faint) 0%, var(--text) 50%, var(--text-faint) 100%) 0 0 / 200% 100%;color:#0000;-webkit-background-clip:text;background-clip:text;animation:1.6s linear infinite shimmer}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.reasoning-body{border-left:2px solid var(--glass-line);color:var(--text-soft);margin-top:10px;padding:2px 0 2px 14px;font-size:13.5px}.reasoning-body .markdown p,.reasoning-body .markdown ul,.reasoning-body .markdown ol{margin-bottom:.6em}.reasoning-body .markdown>:last-child{margin-bottom:0}.markdown>:first-child{margin-top:0}.markdown p,.markdown ul,.markdown ol{margin:0 0 .8em}.markdown ul,.markdown ol{padding-left:1.4em}.markdown li+li{margin-top:.2em}.markdown h3,.markdown h4,.markdown h5{margin:1.1em 0 .5em;line-height:1.35}.markdown code{background:var(--code-bg);border:1px solid var(--glass-line);border-radius:6px;padding:.1em .45em;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.88em}.codeblock{border:1px solid var(--glass-line);background:var(--code-bg);box-shadow:var(--glass-inner);border-radius:16px;margin:0 0 .9em;overflow:hidden}.codeblock-head{border-bottom:1px solid var(--divider);color:var(--text-faint);justify-content:space-between;align-items:center;padding:6px 14px;font-size:12px;display:flex}.codeblock-head button{color:var(--text-soft);font-size:12px}.codeblock-head button:hover{color:var(--text)}.codeblock pre{margin:0;padding:12px 14px;overflow-x:auto}.codeblock pre code{background:0 0;border:none;padding:0;font-size:13px;line-height:1.6}.composer{z-index:5;width:min(760px,100%);padding:0 0 2px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.composer-box{border-radius:28px;align-items:flex-end;gap:8px;padding:8px 8px 8px 18px;transition:background .2s;display:flex}.composer-box:focus-within{background:var(--glass-bg-strong)}.composer textarea{resize:none;color:var(--text);font:inherit;background:0 0;border:none;outline:none;flex:1;max-height:200px;padding:7px 0;line-height:1.5}.composer textarea::placeholder{color:var(--text-faint)}.send-btn{background:var(--accent);width:38px;height:38px;color:var(--accent-text);box-shadow:0 4px 12px #00000026, var(--glass-inner);border-radius:50%;flex-shrink:0;place-items:center;transition:opacity .2s,transform .15s;display:grid}.send-btn:not(:disabled):active{transform:scale(.92)}.send-btn:disabled{opacity:.25;cursor:default}.composer-hint{text-align:center;color:var(--text-faint);margin:6px 0 0;font-size:11.5px}@media (prefers-reduced-motion:reduce){.backdrop span,.typing span{animation:none}.reasoning-toggle.thinking span{color:var(--text-soft);background:0 0;animation:none}}@media (width<=768px){.app{--gutter:8px}.composer textarea,.field input,.field textarea{font-size:16px}.dialog{margin-top:calc(env(safe-area-inset-top,0px) + 12px)}.dialog-body{gap:12px;padding:20px 18px}.mobile-only{display:grid}.sidebar{top:calc(8px + env(safe-area-inset-top,0px));bottom:calc(8px + env(safe-area-inset-bottom,0px));left:calc(8px + env(safe-area-inset-left,0px));z-index:20;background:var(--glass-bg-strong);width:min(280px,100vw - 48px);transition:transform .28s cubic-bezier(.2,.9,.3,1);position:fixed;transform:translate(calc(-100% - 16px))}.sidebar.open{transform:none}.scrim{z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;pointer-events:none;background:#14141e26;transition:opacity .25s;display:block;position:fixed;inset:0}.scrim.show{opacity:1;pointer-events:auto}.main{--topbar-h:56px}.topbar{height:48px;padding:0 5px}.suggestions{grid-template-columns:1fr}.messages-inner{padding-left:10px;padding-right:10px}.bubble{max-width:88%}}
