.assistant-shell { background:#fff; border:1px solid var(--line); border-radius:16px; padding:18px; }
.assistant-progress { min-height:24px; color:var(--muted); font-size:13px; padding:6px 4px; }
.assistant-suggestions { display:flex; gap:10px; justify-content:center; flex-wrap:wrap; margin-top:20px; }
.assistant-suggestions button { background:#f5f7fb; color:#243958; border:1px solid var(--line); border-radius:12px; padding:12px; }
.chat-author { display:block; font-size:12px; color:var(--muted); margin-bottom:8px; }
.chat-content { line-height:1.65; overflow-wrap:anywhere; }
.chat-content code { background:#e2e8f0; padding:2px 5px; border-radius:4px; }
.answer-heading { display:block; margin-top:8px; }
#assistantInput { resize:none; min-height:85px; max-height:220px; }
.assistant-head { display:flex; justify-content:space-between; align-items:center; gap:14px; border-bottom:1px solid var(--line); padding-bottom:13px; }
.assistant-head h3 { margin:0; }
.assistant-head small { color:var(--muted); }
.assistant-messages { height:min(55vh,520px); overflow:auto; padding:18px 4px; display:flex; flex-direction:column; gap:12px; }
.assistant-empty { text-align:center; color:var(--muted); padding:55px 15px; }
.chat-message { max-width:82%; padding:12px 14px; border-radius:14px; white-space:pre-wrap; }
.chat-message.user { align-self:flex-end; background:#e8f1ff; border-bottom-right-radius:4px; }
.chat-message.assistant { align-self:flex-start; background:#f2f4f8; border-bottom-left-radius:4px; }
.chat-message small { display:block; color:var(--muted); margin-top:7px; }
.assistant-compose { display:grid; grid-template-columns:1fr auto; gap:10px; align-items:end; border-top:1px solid var(--line); padding-top:14px; }
.assistant-compose textarea { grid-column:1 / -1; }
.assistant-attachment-controls { display:flex; flex-wrap:wrap; gap:8px; align-items:center; min-height:46px; }
.attachment-button { display:inline-flex; align-items:center; min-height:42px; padding:0 14px; border:1px solid var(--line); border-radius:10px; background:#f7f9fc; color:var(--navy); font-weight:700; cursor:pointer; }
.attachment-button:hover { background:#edf3fb; }
#assistantAttachmentName { color:var(--muted); font-size:.88rem; max-width:380px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.chat-attachment { display:block; width:max-content; max-width:100%; margin-bottom:8px; padding:5px 8px; border-radius:8px; background:rgba(255,255,255,.68); font-size:.86rem; font-weight:700; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.assistant-compose button { height:46px; }
@media (max-width:650px) { .assistant-compose { grid-template-columns:1fr; } .chat-message { max-width:94%; } .assistant-head { align-items:flex-start; flex-direction:column; } }
