.r9ai-widget{max-width:760px;margin:30px auto;border:1px solid #e5e7eb;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 10px 35px rgba(0,0,0,.08);font-family:inherit}
.r9ai-header{padding:18px 20px;background:#f8fafc;border-bottom:1px solid #e5e7eb}
.r9ai-header strong{display:block;font-size:20px}
.r9ai-header small{color:#64748b}
.r9ai-filters{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:14px;border-bottom:1px solid #eee}
.r9ai-filters select{flex:1;padding:1px;border:1px solid #d1d5db;border-radius:10px;background:#fff}
.r9ai-messages{height:430px;overflow-y:auto;padding:18px;background:#f8fafc}
.r9ai-msg{max-width:85%;margin:10px 0;padding:12px 15px;border-radius:14px;line-height:1.75;white-space:pre-wrap}
.r9ai-ai{margin-right:auto;background:#fff;border:1px solid #e5e7eb}
.r9ai-user{margin-left:auto;background:#2563eb;color:#fff}
.r9ai-form{display:flex;gap:10px;padding:14px;border-top:1px solid #e5e7eb}
.r9ai-form input{flex:1;min-width:0;padding:13px;border:1px solid #d1d5db;border-radius:12px}
.r9ai-form button{padding:13px 20px;border:0;border-radius:12px;background:#2563eb;color:#fff;cursor:pointer}
.r9ai-form button:disabled{opacity:.6;cursor:not-allowed}
.r9ai-status{min-height:22px;padding:0 15px 10px;color:#64748b;font-size:13px}
@media(max-width:700px){.r9ai-filters{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.r9ai-filters{grid-template-columns:1fr}.r9ai-messages{height:55vh}.r9ai-msg{max-width:92%}}

.r9ai-msg p{margin:0 0 10px}
.r9ai-msg p:last-child{margin-bottom:0}
.r9ai-msg h3,.r9ai-msg h4{margin:10px 0 8px;line-height:1.4}
.r9ai-msg ul,.r9ai-msg ol{margin:8px 22px;line-height:1.8}
.r9ai-msg code{padding:2px 6px;border-radius:5px;background:#f1f5f9;font-family:monospace}
.r9ai-table-wrap{overflow-x:auto;margin:12px 0}
.r9ai-table{width:100%;border-collapse:collapse;background:#fff;font-size:14px}
.r9ai-table th,.r9ai-table td{border:1px solid #e2e8f0;padding:9px 10px;text-align:right;vertical-align:top}
.r9ai-table th{background:#f1f5f9;font-weight:700}
.r9ai-math{overflow-x:auto;padding:8px 0;text-align:center}
.r9ai-math-inline{display:inline-block}
.r9ai-ai{font-size:16px}
.r9ai-ai mjx-container{font-size:110% !important}

.r9ai-sources{margin:8px 0 14px;padding:10px 12px;border-radius:10px;background:#f8fafc;font-size:13px}.r9ai-sources ul{margin:6px 18px}.r9ai-sources a{text-decoration:none}
