:root {
  --fvcom-line: color-mix(in srgb, currentColor 14%, transparent);
  --fvcom-soft: color-mix(in srgb, currentColor 5%, transparent);
}

/* Old diagnostic tool traces overwhelm long scientific sessions. */
h3:has(> button[id="step-实时执行事件"]) {
  display: none !important;
}

a[href*="/chainlit/thread/"] button[data-sidebar="menu-button"] {
  min-height: 42px;
  height: auto !important;
  padding-block: 7px;
}

a[href*="/chainlit/thread/"] span.truncate {
  display: -webkit-box;
  overflow: hidden;
  white-space: normal !important;
  line-height: 1.25;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

main img[alt$=".png"],
main img[alt$=".jpg"],
main img[alt$=".jpeg"],
main img[alt$=".webp"] {
  display: block;
  width: auto !important;
  max-width: min(100%, 960px) !important;
  max-height: 68vh !important;
  object-fit: contain !important;
  object-position: left top;
  border: 1px solid var(--fvcom-line);
  border-radius: 6px;
  background: var(--fvcom-soft);
}

main a.fvcom-artifact {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  max-width: 100%;
  margin: 4px 8px 4px 0;
  padding: 9px 12px;
  overflow: hidden;
  border: 1px solid var(--fvcom-line);
  border-radius: 6px;
  background: var(--fvcom-soft);
  font-weight: 600;
  text-decoration: none;
  text-overflow: ellipsis;
  white-space: nowrap;
}

main a.fvcom-artifact::before {
  content: "文件";
  flex: none;
  padding: 2px 5px;
  border: 1px solid var(--fvcom-line);
  border-radius: 4px;
  font-size: 11px;
  font-weight: 500;
}

textarea {
  line-height: 1.45 !important;
}

@media (max-width: 760px) {
  main img[alt$=".png"],
  main img[alt$=".jpg"],
  main img[alt$=".jpeg"],
  main img[alt$=".webp"] {
    max-height: 58vh !important;
  }
}
