:root{--primary:#0a2540;--bg:#fff;--fg:#1a1a1a;--muted:#6b7280;--border:#e5e7eb;--user-bg:#e9f4ef;--assistant-bg:#f6f7f9}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{color:var(--fg);background:var(--bg);font:15px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.app{flex-direction:column;height:100%;display:flex}.app[data-standalone=true]{max-width:880px;height:100dvh;box-shadow:0 0 0 1px var(--border);background:#fff;margin:0 auto}@media (width>=920px){body:has(.app[data-standalone=true]){background:linear-gradient(#f4f8fb 0%,#e8f3ee 100%)}.app[data-standalone=true]{border-radius:16px;height:calc(100dvh - 48px);margin:24px auto;overflow:hidden}}.header{background:var(--primary);color:#fff;border-radius:16px 16px 0 0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.app[data-standalone=true] .header{border-radius:0;padding:14px 20px}@media (width>=920px){.app[data-standalone=true] .header{border-radius:16px 16px 0 0}}.app[data-standalone=true] .header strong{font-size:16px}.header strong{font-size:14px}.header-actions{gap:8px;display:flex}.link{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff6;border-radius:6px;padding:4px 8px;font-size:12px}.link:hover{background:#ffffff1a}.messages{flex-direction:column;flex:1;gap:10px;padding:16px;display:flex;overflow-y:auto}.welcome{flex-direction:column;gap:12px;display:flex}.welcome p{color:var(--muted);margin:0}.suggested{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--border);cursor:pointer;text-align:left;background:#fff;border-radius:999px;padding:6px 12px;font-size:13px}.chip:hover{background:var(--user-bg);border-color:var(--primary)}.bubble{white-space:pre-wrap;word-wrap:break-word;border-radius:12px;max-width:85%;padding:10px 12px}.bubble.user{background:var(--user-bg);align-self:flex-end}.bubble.assistant{background:var(--assistant-bg);align-self:flex-start}.markdown>:first-child{margin-top:0}.markdown>:last-child{margin-bottom:0}.markdown p{margin:0 0 8px}.markdown ul,.markdown ol{margin:0 0 8px;padding-left:22px}.markdown li{margin:2px 0}.markdown a{color:var(--primary);text-decoration:underline}.markdown a:hover{text-decoration:none}.markdown code{background:#0000000f;border-radius:4px;padding:1px 4px;font:13px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace}.markdown pre{background:#0000000f;border-radius:6px;margin:0 0 8px;padding:8px 10px;overflow-x:auto}.markdown pre code{background:0 0;padding:0}.markdown blockquote{border-left:3px solid var(--border);color:var(--muted);margin:0 0 8px;padding-left:10px}.markdown h1,.markdown h2,.markdown h3,.markdown h4{margin:8px 0 4px;font-size:1em}.markdown table{border-collapse:collapse;width:100%;margin:0 0 8px;font-size:13px}.markdown th,.markdown td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:4px 8px}.markdown th{background:#00000008;font-weight:600}.typing{gap:4px;padding:4px 2px;display:inline-flex}.typing span{background:var(--muted);opacity:.5;border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite both typing-bounce}.typing span:first-child{animation-delay:-.32s}.typing span:nth-child(2){animation-delay:-.16s}@keyframes typing-bounce{0%,80%,to{opacity:.4;transform:scale(.7)}40%{opacity:1;transform:scale(1)}}.tool-pill{color:#3730a3;background:#eef2ff;border-radius:999px;align-self:flex-start;padding:6px 12px;font-size:12px;animation:.2s pill-fade}@keyframes pill-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.error{color:#991b1b;background:#fee2e2;border-radius:8px;align-self:stretch;padding:8px 10px;font-size:13px}.composer{border-top:1px solid var(--border);flex-direction:column;gap:8px;padding:12px;display:flex}.composer-row{align-items:stretch;gap:8px;display:flex}.composer textarea{resize:none;border:1px solid var(--border);font:inherit;border-radius:8px;outline:none;flex:1;padding:8px}.composer textarea:focus{border-color:var(--primary)}.composer button[type=submit]{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:0 16px;font-weight:600}.composer button[type=submit]:disabled{opacity:.5;cursor:not-allowed}.attach-btn{border:1px solid var(--border);cursor:pointer;width:40px;color:var(--muted);background:0 0;border-radius:8px;align-self:stretch;font-size:18px}.attach-btn:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.attach-btn:disabled{opacity:.5;cursor:not-allowed}.attachments{flex-wrap:wrap;gap:6px;display:flex}.attachment-chip{background:var(--user-bg);border:1px solid var(--border);color:var(--fg);border-radius:999px;align-items:center;gap:6px;max-width:100%;padding:4px 4px 4px 10px;font-size:12px;display:inline-flex}.attachment-icon{font-size:12px}.attachment-name{text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.attachment-remove{cursor:pointer;width:20px;height:20px;color:var(--muted);background:0 0;border:none;border-radius:50%;padding:0;font-size:11px}.attachment-remove:hover{color:var(--fg);background:#00000014}.bubble-attachments{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.bubble-attachment-chip{color:var(--muted);background:#0000000f;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;display:inline-flex}.recaptcha-notice{color:var(--muted);text-align:center;margin:0;font-size:11px}.recaptcha-notice a{color:var(--muted);text-decoration:underline}.recaptcha-notice a:hover{color:var(--primary)}
