:root{color:#111827;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif;line-height:1.45}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}#root{min-height:100vh}.shell{background:#f6f7fb;grid-template-columns:276px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:#eef1f5;border-right:1px solid #e8eaf0;flex-direction:column;gap:16px;min-height:100vh;padding:22px 14px 14px;display:flex}.brand{color:#141720;align-items:center;gap:10px;display:flex}.brand strong{font-size:16px;line-height:1.1;display:block}.brand span{color:#6b7280;font-size:13px;display:block}.brand .iconButton{margin-left:auto}.brandMark{color:#fff;background:#111827;border-radius:8px;place-items:center;width:34px;height:34px;font-size:13px;font-weight:800;display:grid}.brandMark.large{border-radius:12px;width:56px;height:56px;font-size:18px}.nav,.history{flex-direction:column;gap:6px;display:flex}.navItem,.historyItem,.newChat{color:#1f2937;cursor:pointer;width:100%;font:inherit;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:9px;padding:10px 12px;display:flex}.navItem.active,.historyItem.active,.navItem:hover,.historyItem:hover,.newChat:hover{background:#dde1e8}.navItem span{color:#4f46e5;border:1px solid #c7d2fe;border-radius:5px;margin-left:auto;padding:3px 5px;font-size:12px;line-height:1}.historyHeader{color:#9aa2af;margin:2px 8px -8px;font-size:13px}.history{min-height:0;overflow:auto}.historyItem{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account{color:#222936;align-items:center;gap:8px;min-width:0;margin-top:auto;display:flex}.account span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.avatar{background:#f8fafc;border:1px solid #d7dce5;border-radius:999px;flex:none;place-items:center;width:28px;height:28px;display:grid}.iconButton,.sendButton{color:#2f3540;cursor:pointer;background:0 0;border:0;border-radius:999px;flex:none;place-items:center;width:36px;height:36px;display:grid}.iconButton:hover{background:#e6e9ef}.iconButton.add{position:relative;overflow:hidden}.iconButton.add input{cursor:pointer;opacity:0;font-size:0;position:absolute;inset:0}.workspace{background-color:#fff;background-image:linear-gradient(90deg,#0b122006 1px,#0000 1px),linear-gradient(#0b122006 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:56px 56px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;grid-template-rows:auto auto minmax(0,1fr) auto;min-height:100vh;display:grid;position:relative;overflow:hidden}.topbar{align-items:center;gap:16px;padding:24px 28px 10px;display:flex}.announcement{color:#1d2b50;text-overflow:ellipsis;white-space:nowrap;background:#eff0ff;border-radius:8px;flex:1;align-items:center;gap:10px;min-width:0;padding:10px 14px;display:flex;overflow:hidden}.apiButton{color:#111827;background:#fff;border:1px solid #d9dee8;border-radius:8px;padding:9px 14px;text-decoration:none}.modelRow{padding:8px 28px 0}.modelSelect{align-items:center;gap:6px;display:inline-flex;position:relative}.modelSelect select{appearance:none;color:#0f172a;cursor:pointer;font:inherit;background:0 0;border:0;padding:6px 42px 6px 0}.modelSelect span{color:#4f46e5;background:#eef2ff;border-radius:5px;padding:2px 5px;font-size:12px}.modelSelect svg{pointer-events:none;position:absolute;right:16px}.chatStage{min-height:0;padding:28px 28px 16px;overflow:auto}.welcome{flex-direction:column;justify-content:center;max-width:800px;min-height:60vh;margin:0 auto;display:flex}.welcomeIcon{color:#fff;background:#111827;border-radius:12px;place-items:center;width:52px;height:52px;margin-bottom:20px;display:grid}.welcome h1{color:#080b12;margin:0;font-size:40px;font-weight:760;line-height:1.1}.welcome p{color:#657083;border-bottom:1px solid #e7e9ef;margin:12px 0 14px;padding-bottom:16px}.suggestions{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.suggestions button{color:#263244;cursor:pointer;font:inherit;background:#f0f2f5;border:0;border-radius:7px;padding:8px 12px}.suggestions button:hover{background:#e7ebf0}.messages{flex-direction:column;gap:16px;max-width:860px;margin:0 auto;padding-bottom:12px;display:flex}.message{display:flex}.message.user{justify-content:flex-end}.bubble{color:#182233;text-align:left;background:#fff;border:1px solid #e3e7ee;border-radius:8px;max-width:min(680px,82%);padding:12px 14px;line-height:1.65;box-shadow:0 8px 24px #0f172a0a}.message.user .bubble{background:#eef4ff;border-color:#c8d7ff}.bubble p{white-space:pre-wrap;margin:0}.bubble p+p,.bubble p+ul,.bubble p+ol,.bubble ul+p,.bubble ol+p,.bubble blockquote+p{margin-top:12px}.bubble ul,.bubble ol{margin:8px 0 0;padding-left:22px}.bubble li+li{margin-top:4px}.bubble strong{font-weight:700}.bubble blockquote{color:#445066;border-left:3px solid #c7d2fe;margin:12px 0 0;padding:2px 0 2px 12px}.bubble code{color:#111827;background:#eef2f7;border-radius:5px;padding:1px 4px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.92em}.bubble pre{color:#f8fafc;background:#111827;border-radius:8px;margin:12px 0 0;padding:12px;overflow:auto}.bubble pre code{color:inherit;background:0 0;padding:0}.bubble img{border-radius:8px;width:100%;max-width:360px;margin-top:10px;display:block}.messageAttachments{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.messageAttachment{color:#344054;background:#f8fafc;border:1px solid #d9e0ea;border-radius:7px;align-items:center;gap:7px;max-width:220px;padding:6px 8px;font-size:13px;display:inline-flex;overflow:hidden}.messageAttachment img{object-fit:cover;border-radius:6px;flex:none;width:30px;height:30px;margin:0}.messageAttachment span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.typing{color:#7b8494}.composerWrap{width:calc(100% - 56px);max-width:820px;margin:0 auto;padding:0 0 12px}.composerWrap.isDragging .composer{background:#f8fbff;border-color:#2563eb;box-shadow:0 18px 44px #2563eb2e}.composer{background:#fffffff5;border:1px solid #dfe3eb;border-radius:10px;align-items:flex-end;gap:8px;padding:12px;display:flex;position:relative;box-shadow:0 14px 38px #0f172a14}.dropHint{color:#1d4ed8;pointer-events:none;z-index:2;background:#eff6ffeb;border:1px dashed #2563eb;border-radius:8px;place-items:center;font-size:14px;font-weight:600;display:grid;position:absolute;inset:8px 52px 8px 12px}.composer textarea{resize:vertical;color:#111827;min-height:48px;max-height:140px;font:inherit;background:0 0;border:0;outline:none;flex:1}.composer textarea::placeholder{color:#b0b7c3}.sendButton{color:#fff;background:#a8adb5}.sendButton:not(:disabled):hover{background:#111827}.sendButton:disabled{cursor:not-allowed;opacity:.55}.disclaimer{color:#a0a7b4;text-align:center;margin:8px 0 0;font-size:12px}.notice{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;margin-bottom:10px;padding:9px 12px}.attachmentTray{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.attachmentChip{color:#263244;background:#fffffffa;border:1px solid #dbe2ec;border-radius:8px;grid-template-columns:30px minmax(0,1fr) auto 22px;align-items:center;gap:8px;max-width:320px;padding:7px 8px;display:grid;box-shadow:0 8px 20px #0f172a0d}.attachmentChip img{object-fit:cover;border-radius:6px;width:30px;height:30px}.attachmentChip span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.attachmentChip small{color:#7b8494;font-size:12px}.attachmentChip button{color:#647084;cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;width:22px;height:22px;display:grid}.attachmentChip button:hover{color:#111827;background:#edf1f6}.authPage{background:#f3f6fb;grid-template-columns:minmax(0,1fr) 420px;min-height:100vh;display:grid}.authVisual{color:#fff;background-color:#0000;background-image:linear-gradient(135deg,#111827eb,#1d2b50e0),url(https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1600&q=80);background-position:50%;background-repeat:repeat,repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;flex-direction:column;justify-content:center;padding:64px;display:flex}.authVisual h1{margin:24px 0 12px;font-size:46px;line-height:1.08}.authVisual p{color:#dbe3f0;max-width:520px;font-size:18px}.authPanel{background:#fff;flex-direction:column;justify-content:center;gap:16px;padding:46px;display:flex}.authTabs{background:#f1f4f8;border-radius:8px;grid-template-columns:1fr 1fr;gap:6px;padding:4px;display:grid}.authTabs button,.primaryButton,.codeRow button{cursor:pointer;font:inherit;border:0;border-radius:7px}.authTabs button{color:#667085;background:0 0;padding:9px}.authTabs button.active{color:#111827;background:#fff;box-shadow:0 4px 14px #0f172a14}.authPanel label{color:#374151;flex-direction:column;gap:7px;font-size:14px;display:flex}.authPanel input{color:#111827;min-height:42px;font:inherit;border:1px solid #dce2ea;border-radius:8px;padding:0 12px}.authPanel input:focus{border-color:#111827;outline:none}.codeRow{grid-template-columns:minmax(0,1fr) 112px;gap:8px;display:grid}.codeRow button{color:#3730a3;background:#eef2ff}.primaryButton{color:#fff;background:#111827;min-height:44px;margin-top:4px}.linkButton{color:#4f46e5;cursor:pointer;font:inherit;background:0 0;border:0;align-self:center;padding:2px 6px}.linkButton:hover{text-decoration:underline}.primaryButton:disabled,.codeRow button:disabled{cursor:not-allowed;opacity:.6}.authNotice{margin:0}@media (width<=860px){.shell{grid-template-columns:1fr}.sidebar{border-bottom:1px solid #e8eaf0;border-right:0;min-height:auto}.history{max-height:120px}.topbar{flex-direction:column;align-items:stretch;padding:16px}.announcement{white-space:normal}.modelRow,.chatStage{padding-left:16px;padding-right:16px}.welcome{min-height:42vh}.welcome h1{font-size:30px}.composerWrap{width:calc(100% - 32px)}.authPage{grid-template-columns:1fr}.authVisual{min-height:260px;padding:32px 24px}.authVisual h1{font-size:34px}.authPanel{padding:28px 22px}}
