/* Readable Markdown answers, with a clear distinction between advice and user input. */
.messages {
  background: #f6f8f2;
  padding: 26px;
}
.message { margin-bottom: 28px; }
.message-label {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 11px;
  font-weight: 600;
  color: #62765c;
  margin-bottom: 10px;
}
.message.assistant .message-label::before {
  content: '农';
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 8px 8px 8px 2px;
  color: #f0f4e7;
  background: #345840;
  font-size: 12px;
}
.message.assistant { width: 100%; }
.message.assistant .bubble {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding: 22px 24px;
  border: 1px solid #e0e7d9;
  border-radius: 3px 16px 16px;
  background: #fff;
  box-shadow: 0 3px 12px #234c3905;
  color: #354332;
  font-size: 14px;
  line-height: 1.95;
  white-space: normal;
}
.message.user .bubble {
  max-width: 85%;
  padding: 13px 18px;
  border-radius: 14px 3px 14px 14px;
  background: #2e543d;
}
.markdown-body > :first-child { margin-top: 0 !important; }
.markdown-body > :last-child { margin-bottom: 0 !important; }
.markdown-body p { margin: 0 0 14px; }
.markdown-body strong { color: #234c39; font-weight: 650; }
.markdown-body em { color: #627254; }
.markdown-body h1, .markdown-body h2, .markdown-body h3,
.markdown-body h4, .markdown-body h5, .markdown-body h6,
.markdown-body .markdown-section {
  color: #244d35;
  font-size: 15px;
  font-weight: 650;
  line-height: 1.6;
  margin: 24px 0 12px;
  padding: 9px 13px;
  background: linear-gradient(90deg, #edf3e7, #f8faf5);
  border-left: 3px solid #829c63;
  border-radius: 0 7px 7px 0;
}
.markdown-body h1 { font-size: 20px; }
.markdown-body h2 { font-size: 17px; }
.markdown-body ul, .markdown-body ol {
  margin: 10px 0 18px;
  padding-left: 23px;
}
.markdown-body li { padding-left: 5px; margin: 7px 0; }
.markdown-body li::marker { color: #77945b; font-weight: 650; }
.markdown-body li p { margin: 3px 0; }
.markdown-body li > ul, .markdown-body li > ol { margin: 5px 0 8px; }
.markdown-body blockquote {
  margin: 18px 0;
  padding: 13px 17px;
  border-left: 3px solid #c3a969;
  border-radius: 0 9px 9px 0;
  background: #faf5e6;
  color: #77643b;
}
.markdown-body blockquote p:last-child { margin-bottom: 0; }
.markdown-body hr { border: 0; border-top: 1px solid #e5ebdf; margin: 22px 0; }
.markdown-body a { color: #3f734b; text-decoration: underline; text-underline-offset: 3px; }
.markdown-body a:hover { color: #183c2b; }
.markdown-body code {
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: .9em;
  padding: 2px 5px;
  border-radius: 4px;
  background: #edf1e8;
  color: #49643c;
  overflow-wrap: anywhere;
}
.markdown-body pre {
  max-width: 100%;
  overflow-x: auto;
  white-space: pre;
  background: #f4f6f0;
  border: 1px solid #e3e9dc;
  border-radius: 9px;
  margin: 15px 0;
  padding: 14px 16px;
}
.markdown-body pre code { padding: 0; background: none; overflow-wrap: normal; }
.markdown-table {
  width: 100%;
  overflow-x: auto;
  border: 1px solid #dfe7d6;
  border-radius: 10px;
  margin: 17px 0;
}
.markdown-table:focus-visible { outline: 2px solid #8aa774; outline-offset: 3px; }
.markdown-body table { border-collapse: collapse; width: 100%; font-size: 13px; line-height: 1.7; }
.markdown-body th, .markdown-body td { text-align: left; padding: 10px 13px; min-width: 110px; border-bottom: 1px solid #e6ebdf; }
.markdown-body th { background: #eaf0e1; color: #3a5730; font-weight: 650; }
.markdown-body tr:nth-child(even) td { background: #f9faf6; }
.markdown-body tr:last-child td { border-bottom: 0; }
.message-actions { margin-top: 7px; }
.message-actions button { font-size: 11px; padding: 5px 9px; border-radius: 6px; }
@media (max-width: 1100px) {
  .messages { padding: 20px 18px; }
  .message.assistant .bubble { padding: 19px; }
}
@media (max-width: 540px) {
  .messages { padding: 18px 12px; }
  .message.assistant .bubble { padding: 16px; font-size: 13px; }
  .markdown-body h1 { font-size: 18px; }
  .markdown-body h2 { font-size: 16px; }
  .markdown-body h3, .markdown-body .markdown-section { font-size: 14px; }
}
