:root{--panel:#121212;--border:#ffffff1a;--border-strong:#ffffff2e;--text:#fff;--text-dim:#ffffffb3;--text-muted:#858585;--cream:#f0f0eb;--cream-text:#0f0f0f;--radius-pill:999px;--radius-card:20px;--font-heading:"DM Sans", Inter, sans-serif;--font-body:"Host Grotesk", Inter, sans-serif}a{color:inherit;text-decoration:none}button,textarea{font:inherit}.chat-title{font-family:var(--font-heading);letter-spacing:-.01em;margin:0 0 4px;font-size:clamp(21px,3vw,26px);font-weight:700;line-height:1.2}.chat-title .dim{color:var(--text-muted);font-weight:400}.chat-shell{flex-direction:column;flex:1;width:min(100%,960px);min-height:0;margin:0 auto;padding:0 20px;display:flex}.chat-intro{width:min(100%,960px);margin:18px auto 0;padding:0 20px}.privacy-note{color:var(--text-muted);text-align:center;white-space:nowrap;justify-content:center;align-items:center;gap:6px;margin:10px 0 0;font-size:12px;line-height:1.5;display:flex;overflow:hidden}.privacy-note-content{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.privacy-note a{color:var(--text-dim);text-underline-offset:2px;white-space:nowrap;flex-shrink:0;text-decoration:underline}.chat-messages{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#ffffff1f transparent;flex-direction:column;flex:1;gap:16px;min-width:0;min-height:0;padding:20px 0 12px;display:flex;overflow:hidden auto}.msg{align-items:flex-start;gap:12px;width:100%;min-width:0;max-width:100%;animation:.2s msg-in;display:flex}@keyframes msg-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.msg-avatar{border:1px solid var(--border-strong);width:28px;height:28px;color:var(--text-dim);border-radius:8px;flex:none;justify-content:center;align-items:center;display:flex}.msg-avatar svg{width:14px;height:14px}.msg.user{flex-direction:row-reverse;width:fit-content;max-width:min(100%,720px);margin-left:auto}.msg.user .msg-avatar{display:none}.msg.system .msg-avatar{color:var(--text-muted)}.msg-bubble{overflow-wrap:anywhere;word-break:break-word;border:1px solid var(--border);border-radius:var(--radius-card);min-width:0;max-width:min(620px,100%);padding:13px 16px;font-size:14.5px;line-height:1.55}.msg.user .msg-bubble{border-color:var(--border-strong);color:var(--text);background:#ffffff0d;border-top-right-radius:6px}.msg.assistant .msg-bubble{background:var(--panel);border-top-left-radius:6px}.msg.system .msg-bubble{color:var(--text-muted);background:0 0;border-style:dashed;font-size:13px}.msg-bubble p{margin:0 0 8px}.msg-bubble p:last-child{margin-bottom:0}.typing{align-items:center;gap:4px;padding:4px 0;display:inline-flex}.typing span{background:var(--text-muted);border-radius:50%;width:6px;height:6px;animation:1.1s ease-in-out infinite typing-blink}.typing span:nth-child(2){animation-delay:.15s}.typing span:nth-child(3){animation-delay:.3s}@keyframes typing-blink{0%,80%,to{opacity:.2;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}.chat-composer{width:100%;padding:12px 0 22px;position:sticky;bottom:0}.composer-card{border:1px solid var(--border-strong);border-radius:var(--radius-card);background:var(--panel);width:100%;max-width:100%;padding:14px 16px 12px;overflow:hidden}.composer-card textarea{resize:none;width:100%;max-width:100%;color:var(--text);font-family:var(--font-body);border:none;outline:none;min-height:24px;max-height:160px;margin:0 0 10px;padding:0;font-size:14.5px;line-height:1.5;display:block}.composer-card textarea::placeholder{color:var(--text-muted)}.composer-toolbar{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;min-width:0;padding-top:10px;display:flex}.composer-tools{scrollbar-width:none;align-items:center;gap:6px;min-width:0;display:flex;overflow-x:auto}.composer-tools::-webkit-scrollbar{display:none}.tool-pill{border-radius:var(--radius-pill);border:1px solid var(--border);color:var(--text-muted);font-size:12.5px;font-family:var(--font-body);cursor:not-allowed;white-space:nowrap;background:0 0;flex:none;align-items:center;gap:6px;padding:6px 12px;display:inline-flex}.tool-icon{width:30px;height:30px;color:var(--text-muted);cursor:not-allowed;background:0 0;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.tool-icon svg,.tool-pill svg{width:15px;height:15px}.send-btn{background:var(--cream);color:var(--cream-text);font-family:var(--font-heading);cursor:pointer;border:none;border-radius:100%;flex:none;justify-content:center;align-items:center;gap:6px;padding:5px;font-size:13.5px;font-weight:600;transition:transform .15s,opacity .15s;display:inline-flex}.send-btn svg{width:24px;height:24px}.send-btn:hover{transform:scale(1.03)}.send-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.send-btn{color:#ffffff4d;cursor:not-allowed;backdrop-filter:blur(2px);background-color:#ffffff1a;border:1px solid #ffffff0d;justify-content:center;align-items:center;transition:all .2s;display:flex;position:relative}.send-btn:not(:disabled){color:#000;cursor:pointer;backdrop-filter:none;background-color:#fff;border:none}.send-btn:not(:disabled):hover{opacity:.9;transform:scale(1.05)}.send-icon{transition:opacity .2s}.send-loading{opacity:0;transition:opacity .2s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.loading-square{background-color:#000;width:16px;height:16px;animation:1s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.send-btn[aria-busy=true] .send-icon{opacity:0}.send-btn[aria-busy=true] .send-loading{opacity:1}.send-btn:disabled{cursor:not-allowed;opacity:.7}.composer-hint{color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin:10px 2px 0;font-size:12px;display:flex}.composer-hint .clear-btn{color:var(--text-muted);cursor:pointer;font-family:inherit;font-size:inherit;border:none;padding:0;text-decoration:underline dotted}.composer-hint .clear-btn:hover{color:var(--text)}.chat-messages::-webkit-scrollbar{width:8px}.chat-messages::-webkit-scrollbar-track{background:0 0}.chat-messages::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:8px}@media (width<=900px){.chat-header{padding-left:18px;padding-right:18px}.chat-nav{gap:24px}.chat-shell{padding-left:18px;padding-right:18px}.msg-bubble{max-width:min(620px,85vw)}}@media (width<=640px){.chat-header{padding:14px 14px 6px}.chat-nav{flex-wrap:wrap;gap:12px 16px;padding-right:0;font-size:13px}.chat-logo{font-size:14px}.chat-logo svg{width:17px;height:17px}.chat-intro{margin-top:14px;padding:0 14px}.chat-title{font-size:21px;line-height:1.25}.chat-shell{padding:0 14px}.chat-messages{gap:12px;padding-top:14px;padding-bottom:10px}.msg{gap:8px}.msg-avatar{border-radius:7px;width:26px;height:26px}.msg-avatar svg{width:13px;height:13px}.msg-bubble{border-radius:16px;max-width:calc(100vw - 52px);padding:11px 13px;font-size:14px;line-height:1.5}.msg.user{max-width:88%}.msg.user .msg-bubble{border-top-right-radius:5px;max-width:100%}.msg.assistant .msg-bubble{border-top-left-radius:5px}.msg.system .msg-bubble{font-size:12.5px}.chat-composer{padding:8px 0 max(12px, env(safe-area-inset-bottom))}.composer-card{border-radius:17px;padding:12px 12px 10px}.composer-card textarea{max-height:130px;margin-bottom:8px;font-size:14px}.composer-toolbar{gap:6px;padding-top:8px}.composer-tools{gap:3px;max-width:calc(100% - 48px)}.composer-tools .tool-pill{padding:6px 9px}.composer-tools .tool-pill span{display:none}.tool-icon{width:28px;height:28px}.send-btn{width:38px;height:38px;min-height:38px;padding:0}.send-btn span{display:none}.send-btn svg{width:15px;height:15px}.composer-hint{margin-top:8px;font-size:11px}}@media (width<=380px){.chat-header{padding-left:10px;padding-right:10px}.chat-nav{gap:10px 12px}.chat-shell,.chat-intro{padding-left:10px;padding-right:10px}.msg-bubble{max-width:calc(100vw - 42px);padding:10px 12px;font-size:13.5px}.composer-card{padding-left:10px;padding-right:10px}.tool-icon{width:26px;height:26px}}@media (prefers-reduced-motion:reduce){.msg,.typing span,.send-btn{transition:none;animation:none}}
