/* Temporary, bilingual research artwork. Each data-research-visual region is replaceable. */
.research-visual {
  --rv-ink: #292b2e; --rv-muted: #686c70; --rv-line: #e7e8e6; --rv-soft: #f5f6f4;
  position: relative; color: var(--rv-ink); text-align: left;
  font-family: Interdisplay, "PingFang SC", "Microsoft YaHei", sans-serif;
  line-height: 1.4; font-weight: 400; -webkit-user-select: none; user-select: none;
  pointer-events: none; container-type: inline-size;
}
.research-visual *, .research-visual *::before, .research-visual *::after { box-sizing: border-box; }
.research-visual :is(h2,h3,p) { margin: 0; }
.research-visual :is(strong,h2,h3) { font-weight: 500; }
.research-visual .rv-icon { display: block; flex: none; width: 20px; height: 20px; }
.rv-concept { color: #6c6d70; font-size: 11px; white-space: nowrap; }
.rv-send-mark { display: grid; place-items: center; flex: none; width: 30px; height: 30px; background: #292b2e; color: #fff; border-radius: 50%; }
.rv-send-mark .rv-icon { width: 17px; height: 17px; }
.rv-rule { display: block; height: 5px; border-radius: 2px; background: #e3e5e2; margin-bottom: 9px; }
.rv-rule.is-short { width: 65%; }
.rv-rule.is-highlight { background: #eedfc2; }
/* 1. Literature and Agent concept, in the incumbent large preview frame. */
.rv-overview { width: 100%; aspect-ratio: 1.54; overflow: hidden; background: #fff; border-radius: 20px; }
.rv-overview-toolbar { height: 7.9%; min-height: 32px; display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 0 2.2%; border-bottom: 1px solid var(--rv-line); font-size: clamp(11px,1.15cqw,14px); color: #565b60; background: #fafbf9; }
.rv-overview-toolbar > .rv-concept { font-size: clamp(9px,.95cqw,12px); }
.rv-window-dots { display: flex; gap: 6px; }
.rv-window-dots i { width: 7px; height: 7px; border-radius: 50%; background: #dcdfdb; }
.rv-workspace-body { height: 92.1%; display: grid; grid-template-columns: 16.5% 1fr; }
.rv-workspace-rail { position: relative; padding: 17% 9%; background: #f7f8f6; border-right: 1px solid var(--rv-line); }
.rv-workspace-brand { margin: 0 5% 30%; }
.rv-workspace-brand img { display: block; width: 100%; height: auto; }
.rv-rail-item { display: flex; align-items: center; gap: 8px; padding: 9% 7%; margin-bottom: 5%; color: #626a67; font-size: clamp(10px,1.05cqw,13px); border-radius: 7px; }
.rv-rail-item.is-current { background: #e7eae4; color: #343f38; }
.rv-rail-item .rv-icon, .rv-rail-foot .rv-icon { width: 16px; height: 16px; }
.rv-rail-foot { position: absolute; inset: auto 14% 5%; display: flex; gap: 7px; align-items: center; font-size: clamp(10px,1cqw,12px); color: #68716b; }
.rv-workspace-main { padding: 4% 4.3% 4.4%; min-width: 0; background: #fff; }
.rv-workspace-heading { margin-bottom: 4.5%; }
.rv-workspace-heading h2 { font-family: Switzer, Interdisplay, "PingFang SC", sans-serif; font-size: clamp(17px,2.5cqw,31px); line-height: 1.15; letter-spacing: -.025em; }
.rv-workspace-heading p { margin-top: 9px; color: var(--rv-muted); font-size: clamp(11px,1.25cqw,15px); }
.rv-workspace-panels { display: grid; grid-template-columns: 47% 1fr; gap: 4.4%; height: 78%; min-height: 0; }
.rv-paper-view { border: 1px solid #e4e6e2; border-radius: 10px; overflow: hidden; background: #fafbf9; }
.rv-paper-toolbar { display: flex; align-items: center; gap: 7px; padding: 4% 5%; border-bottom: 1px solid var(--rv-line); color: #68706a; font-size: clamp(9px,1cqw,12px); }
.rv-paper-toolbar .rv-icon { width: 15px; height: 15px; }
.rv-paper-toolbar > .rv-icon:last-child { margin-left: auto; }
.rv-paper-sheet { padding: 8% 7%; background: #fff; height: 100%; }
.rv-paper-meta { display: flex; justify-content: space-between; color: #777d78; font-size: clamp(9px,.95cqw,12px); }
.rv-paper-meta > span:last-child { color: #ae6252; }
.rv-paper-sheet h3 { margin-top: 6%; font-family: Switzer, Interdisplay, "PingFang SC", sans-serif; font-size: clamp(14px,1.9cqw,24px); line-height: 1.25; letter-spacing: -.02em; }
.rv-paper-tags { display: flex; gap: 10px; padding-block: 7%; color: #717970; font-size: clamp(9px,.95cqw,12px); }
.rv-paper-tags span:first-child { color: #323d32; text-decoration: underline; text-underline-offset: 6px; }
.rv-paper-abstract { color: #5d645e; font-size: clamp(10px,1.08cqw,13px); line-height: 1.6; }
.rv-document-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 7%; margin-top: 8%; }
.rv-paper-note { display: flex; align-items: center; gap: 7px; margin-top: 8%; color: #68755f; font-size: clamp(9px,.95cqw,12px); }
.rv-paper-note .rv-icon { width: 15px; height: 15px; }
.rv-discussion { display: flex; flex-direction: column; padding-block: 2%; min-width: 0; }
.rv-discussion-header { display: flex; align-items: center; gap: 8px; }
.rv-discussion-header h3 { font-size: clamp(12px,1.5cqw,18px); line-height: 1.3; }
.rv-agent-mark { display: grid; place-items: center; flex: none; width: 28px; height: 28px; border-radius: 9px; color: #555e51; background: #edf0e9; }
.rv-agent-mark .rv-icon { width: 16px; height: 16px; }
.rv-question-bubble { margin-top: 9%; padding: 5% 6%; background: #f0f2ee; border-radius: 12px 12px 3px 12px; color: #4e574b; font-size: clamp(11px,1.3cqw,16px); line-height: 1.6; }
.rv-answer-head { display: flex; align-items: center; gap: 7px; margin-top: 9%; font-size: clamp(11px,1.1cqw,14px); }
.rv-tiny-brand { display:inline-flex; align-items:center; justify-content:center; flex:none; width:18px; height:18px; }
.rv-tiny-brand > img { display:block; width:100%; height:100%; }
.rv-answer-title { display: block; margin-top: 6%; font-size: clamp(11px,1.3cqw,16px); }
.rv-reading-path { display: grid; gap: 12px; margin-top: 5%; }
.rv-reading-path > div { display: flex; align-items: center; gap: 7px; font-size: clamp(10px,1.1cqw,14px); color: #626961; }
.rv-reading-path .rv-icon { width: 13px; height: 13px; color: #75896c; }
.rv-chat-composer { margin-top: auto; display: flex; justify-content: space-between; align-items: center; gap: 8px; padding: 4% 5%; border: 1px solid #dfe2dc; border-radius: 10px; color: #6c7269; font-size: clamp(10px,1.15cqw,14px); }
/* 2. A paper search with a useful passage, clear of the binocular character. */
.journey-slide > .rv-literature, .journey-slide-snapshot > .rv-literature { position: absolute; inset: 0; width: 100%; height: 100%; filter: none; }
.rv-search-window { position: absolute; top: 10.5%; left: 9%; width: 80%; padding: 5.1%; background: #fff; border-radius: 15px; box-shadow: 0 18px 32px rgb(108 67 25 / .14); }
.rv-panel-heading { display: flex; gap: 9px; align-items: center; font-size: clamp(13px,3.65cqw,18px); letter-spacing: -.02em; }
.rv-panel-heading .rv-icon { width: 19px; height: 19px; color: #7b704f; }
.rv-search-query { display: flex; align-items: center; gap: 8px; margin-top: 7%; padding: 10px; border-radius: 8px; background: #f6f5f0; font-size: clamp(10px,2.8cqw,14px); color: #625c49; }
.rv-search-query .rv-icon { width: 16px; height: 16px; }
.rv-search-caption { padding: 5% 0 3%; font-size: clamp(10px,2.55cqw,13px); color: #6e716a; }
.rv-paper-result { display: flex; align-items: center; gap: 10px; padding: 5.5% 0; border-bottom: 1px solid #eeeee9; }
.rv-file-mark { display: grid; place-items: center; width: 33px; height: 39px; background: #faf0e7; border-radius: 6px; color: #ad7351; flex: none; }
.rv-file-mark.is-sage { background: #eef2e9; color: #6b805b; }
.rv-file-mark .rv-icon { width: 21px; height: 21px; }
.rv-paper-result > div { min-width: 0; flex: 1; }
.rv-paper-result strong { display: block; font-size: clamp(11px,3.05cqw,15px); line-height: 1.4; }
.rv-paper-result small { display: block; margin-top: 4px; color: #7a7d77; font-size: clamp(9px,2.5cqw,12px); }
.rv-paper-result > .rv-icon { width: 15px; height: 15px; color: #8c9184; }
.rv-search-footer { display: flex; justify-content: space-between; align-items: center; margin-top: 5%; }
.rv-search-footer .rv-icon { width: 16px; height: 16px; color: #656a60; }
.rv-search-footer .rv-concept { font-size: clamp(9px,2.4cqw,11px); }
.rv-literature-note { position: absolute; left: 5%; bottom: 8.5%; width: 49%; display: flex; align-items: center; gap: 9px; padding: 4%; border-radius: 12px; background: #fffdf9; box-shadow: 0 10px 22px rgb(108 67 25 / .13); }
.rv-note-symbol { color: #a8783a; }
.rv-literature-note .rv-icon { width: 22px; height: 22px; }
.rv-literature-note strong { display: block; font-size: clamp(10px,2.9cqw,14px); }
.rv-literature-note small { display: block; margin-top: 4px; color: #7c705c; font-size: clamp(9px,2.35cqw,11px); }
/* 4. A restrained flow diagram, with quiet space for the lower-left painter. */
.journey-slide > .rv-flow, .journey-slide-snapshot > .rv-flow { position: absolute; top: 38%; right: 7%; bottom: 10%; left: auto; width: 77%; height: auto; padding: 5%; background: #fffdfc; border-radius: 14px; box-shadow: 0 18px 35px rgb(100 49 48 / .15); }
/* 3. An example data table and comparison chart; no scientific claim. */
.journey-slide > .rv-data, .journey-slide-snapshot > .rv-data { position: absolute; top: 37%; left: 6%; bottom: 8.5%; width: 79%; padding: 5%; border-radius: 14px; background: #fff; box-shadow: 0 18px 35px rgb(15 80 113 / .16); }
.rv-data-file { display: flex; align-items: center; gap: 8px; }
.rv-data-file > div { min-width: 0; flex: 1; }
.rv-data-file strong { display: block; font-size: clamp(11px,3.2cqw,16px); letter-spacing: -.015em; line-height: 1.3; }
.rv-data-file small { display: block; color: #788178; font-size: clamp(9px,2.55cqw,12px); margin-top: 2px; }
/* 5–6. Hero-side miniatures preserve the original artwork's scale and placement. */
.rv-mini-agent { width: 100%; background: #fff; border-radius: 12px; box-shadow: 0 16px 34px rgb(45 49 47 / .09); padding: 8%; }
.rv-mini-agent { transform: rotate(8deg); }
.rv-mini-top { display: flex; align-items: center; gap: 6px; color: #666c69; font-size: clamp(7px,5.2cqw,14px); }
.rv-mini-top .rv-icon { width: 15px; height: 15px; }
.rv-mini-question { display: block; margin-top: 14%; font-size: clamp(10px,7.1cqw,20px); line-height: 1.45; letter-spacing: -.025em; }
.rv-mini-attachment { display: flex; align-items: center; gap: 5px; padding: 6% 5%; margin-top: 12%; border-radius: 5px; background: #f1f3ee; color: #687560; font-size: clamp(6px,4.7cqw,12px); }
.rv-mini-attachment .rv-icon { width: 13px; height: 13px; }
.rv-mini-bottom { display: flex; justify-content: space-between; align-items: center; margin-top: 14%; gap: 5px; }
.rv-mini-bottom .rv-concept { font-size: clamp(6px,4.2cqw,11px); }
.rv-mini-bottom .rv-send-mark { width: 23px; height: 23px; }
.rv-mini-bottom .rv-send-mark .rv-icon { width: 14px; height: 14px; }
@media (min-width: 768px) { .task-content:has(.research-visual) { width: 280px; } }
@media (max-width: 767px) {
  .rv-overview { aspect-ratio: 1.06; border-radius: 10px; }
  .rv-overview-toolbar { height: 10%; min-height: 30px; gap: 5px; padding-inline: 4%; }
  .rv-overview-toolbar > span:not(.rv-concept) { font-size: 10px; }
  .rv-window-dots { gap: 4px; }
  .rv-window-dots i { width: 5px; height: 5px; }
  .rv-workspace-body { height: 90%; grid-template-columns: 1fr; }
  .rv-workspace-rail { display: none; }
  .rv-workspace-main { padding: 7% 5%; }
  .rv-workspace-heading { margin-bottom: 7%; }
  .rv-workspace-heading h2 { font-size: clamp(16px,5.4cqw,23px); }
  .rv-workspace-heading p { font-size: 10px; margin-top: 5px; }
  .rv-workspace-panels { gap: 5%; height: 73%; grid-template-columns: 46% 1fr; }
  .rv-paper-toolbar { gap: 3px; padding: 6%; font-size: 8px; }
  .rv-paper-toolbar .rv-icon { width: 10px; height: 10px; }
  .rv-paper-toolbar .rv-icon:last-child { display: none; }
  .rv-paper-sheet { padding: 9% 8%; }
  .rv-paper-sheet h3 { font-size: 13px; margin-top: 9%; }
  .rv-paper-meta, .rv-paper-tags { font-size: 8px; }
  .rv-paper-tags { gap: 6px; padding-block: 10%; }
  .rv-paper-abstract { font-size: 9px; line-height: 1.5; }
  .rv-document-columns { margin-top: 13%; gap: 10%; }
  .rv-rule { height: 3px; margin-bottom: 6px; }
  .rv-document-columns .rv-rule:nth-child(n+5) { display: none; }
  .rv-paper-note { display: none; }
  .rv-discussion-header { gap: 5px; }
  .rv-discussion-header h3 { font-size: 11px; }
  .rv-agent-mark { width: 21px; height: 21px; border-radius: 6px; }
  .rv-agent-mark .rv-icon { width: 12px; height: 12px; }
  .rv-question-bubble { font-size: 10px; margin-top: 13%; padding: 7%; line-height: 1.55; }
  .rv-answer-head { font-size: 9px; margin-top: 12%; }
  .rv-answer-title { font-size: 10px; margin-top: 9%; }
  .rv-reading-path { gap: 9px; margin-top: 10%; }
  .rv-reading-path > div { font-size: 9px; align-items: flex-start; gap: 4px; }
  .rv-reading-path .rv-icon { width: 10px; height: 10px; margin-top: 1px; }
  .rv-reading-path > div:last-child { display: none; }
  .rv-chat-composer { padding: 5%; font-size: 8px; border-radius: 6px; }
  .rv-chat-composer .rv-send-mark { width: 19px; height: 19px; }
  .rv-chat-composer .rv-send-mark .rv-icon { width: 11px; height: 11px; }
  .rv-concept { font-size: 9px; }
  .rv-search-window { left: 8%; width: 83%; padding: 5.3%; }
  .rv-search-query { padding: 8px; }
  .rv-paper-result { gap: 7px; padding-block: 5%; }
  .rv-file-mark { width: 27px; height: 32px; }
  .rv-file-mark .rv-icon { width: 17px; height: 17px; }
  .rv-panel-heading { gap: 7px; }
  .rv-panel-heading .rv-icon { width: 16px; height: 16px; }
  .rv-literature-note { gap: 6px; width: 51%; }
  .rv-note-symbol .rv-icon { width: 17px; height: 17px; }
  .rv-data-file { gap: 6px; }
  .rv-mini-agent { border-radius: 6px; }
  .rv-mini-top .rv-icon { width: 9px; height: 9px; }
  .rv-mini-attachment .rv-icon { width: 8px; height: 8px; }
  .rv-mini-bottom .rv-send-mark { width: 13px; height: 13px; }
  .rv-mini-bottom .rv-send-mark .rv-icon { width: 9px; height: 9px; }
}
@media (prefers-reduced-motion: reduce) { .research-visual * { animation: none !important; transition: none !important; } }
/* Bounded visual review: keep headings visible and reserve the ruler's corner. */
.research-visual :is(h2,h3) { color: inherit; }
.rv-search-footer .rv-concept { position: absolute; top: -24px; right: 1%; color: #755930; }
.rv-mini-agent { aspect-ratio: 387 / 324; }
.rv-mini-question { font-size: clamp(10px,6.6cqw,19px); margin-top: 11%; }
.rv-mini-attachment { margin-top: 10%; }
.rv-mini-bottom { margin-top: 11%; }
@media (min-width: 768px) { .task-content:has(.research-visual) { width: 250px; } }
@media (max-width: 767px) {
  .rv-overview { aspect-ratio: .9; }
  .rv-workspace-heading { margin-bottom: 6%; }
  .rv-workspace-heading h2 { font-size: clamp(16px,5.1cqw,21px); }
  .rv-workspace-heading p { display: none; }
  .rv-workspace-main { padding: 6% 5%; }
  .rv-workspace-panels { height: calc(100% - 58px); }
  .rv-paper-abstract { display: none; }
  .rv-document-columns { margin-top: 8%; }
  .rv-question-bubble { margin-top: 8%; line-height: 1.45; }
  .rv-answer-head { margin-top: 8%; }
  .rv-answer-title { margin-top: 5%; }
  .rv-reading-path { margin-top: 6%; }
  .rv-reading-path > div:nth-child(n+2) { display: none; }
  .rv-chat-composer { margin-top: auto; }
  .rv-search-footer .rv-concept { top: -21px; font-size: 9px; }
}
/* Match the original replaced image's box exactly; no inline-SVG baseline gap. */
.research-efficiency-art { display: block; }
/* With preview labels removed, keep the remaining marks on the trailing edge. */
.rv-mini-bottom, .rv-search-footer { justify-content: flex-end; }
/* Finish review: a simpler content hierarchy for very narrow phones. */
@media (max-width: 359px) {
  .rv-workspace-main { display: flex; flex-direction: column; min-height: 0; }
  .rv-workspace-heading { flex: none; margin-bottom: 5%; }
  .rv-workspace-panels { flex: 1; height: auto; min-height: 0; }
  .rv-paper-tags { flex-wrap: wrap; gap: 6px 8px; }
  .rv-discussion-header, .rv-answer-title { display: none; }
  .rv-question-bubble { margin-top: 0; }
  .rv-chat-composer { flex: none; }
  .rv-paper-result + .rv-paper-result { display: none; }
}
/* Purpose-built output previews, 2026-10-24: no recycled gallery assets. */
.rv-figure-studio { display: flex; flex-direction: column; }
.rv-figure-toolbar { display: flex; align-items: center; gap: 7px; color: #65514c; font-size: clamp(11px,3.2cqw,15px); }
.rv-figure-toolbar > .rv-icon { width: 16px; height: 16px; color: #aa7d70; }
.rv-figure-tools { display: flex; gap: 3px; margin-left: auto; }
.rv-figure-tools i { width: 3px; height: 3px; background: #c9b8b0; border-radius: 50%; }
.rv-figure-canvas { flex: 1; min-height: 0; display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: 1fr 1fr; column-gap: 6%; row-gap: 5%; margin-top: 5%; }
.rv-figure-output { display: flex; flex-direction: column; min-height: 0; min-width: 0; }
.rv-figure-output > strong { flex: none; font-size: clamp(11px,3.1cqw,14px); line-height: 1.3; font-weight: 500; color: #6c5149; }
.rv-output-mini { display: block; width: 100%; flex: 1; min-height: 0; margin-top: 4px; }
.rv-figure-output--ai { grid-column: 2; grid-row: 2; }
.rv-figure-output--ai img { display: block; flex: 1; width: 100%; height: 0; min-height: 0; object-fit: contain; object-position: left center; margin-top: 4px; }
/* Differential-expression preview, with a clean lower-right corner for the ruler. */
.rv-volcano { display: flex; flex-direction: column; }
.rv-volcano .rv-data-file { flex: none; }
.rv-volcano-file { display: grid; place-items: center; flex: none; width: 29px; height: 34px; border-radius: 6px; background: #edf3f3; color: #63848d; }
.rv-volcano-file .rv-icon { width: 18px; height: 18px; }
.rv-volcano-legend { flex: none; display: flex; gap: 12px; margin-top: 5%; color: #637681; font-size: clamp(9px,2.55cqw,12px); white-space: nowrap; }
.rv-volcano-key { display: inline-flex; align-items: center; gap: 4px; }
.rv-volcano-key i { width: 5px; height: 5px; border-radius: 50%; background: #ccd5da; }
.rv-volcano-key--down i { background: #4b8ead; }
.rv-volcano-key--up i { background: #d47b70; }
.rv-volcano-chart { display: block; width: 84%; flex: 1; min-height: 0; margin-top: 3%; overflow: visible; }
.rv-volcano-axis { fill: none; stroke: #a7b8c0; stroke-width: 1.15; }
.rv-volcano-grid { fill: none; stroke: #edf1f3; stroke-width: 1; }
.rv-volcano-threshold { fill: none; stroke: #d8e0e4; stroke-width: 1; stroke-dasharray: 3.5 3.5; }
.rv-volcano-points--neutral { fill: #c5cfd5; opacity: .68; }
.rv-volcano-points--down { fill: #4b8ead; opacity: .87; }
.rv-volcano-points--up { fill: #d47b70; opacity: .87; }
.rv-volcano-ticks, .rv-volcano-labels { font-family: Interdisplay, sans-serif; fill: #6b7d87; font-weight: 400; }
.rv-volcano-ticks { font-size: 15px; }
.rv-volcano-labels { font-size: 17px; }
@media(max-width:767px) {
 .rv-figure-toolbar { gap: 6px; }
 .rv-figure-toolbar > .rv-icon { width: 13px; height: 13px; }
 .rv-figure-canvas { margin-top: 4%; }
 .rv-volcano-file { width: 25px; height: 29px; }
 .rv-volcano-file .rv-icon { width: 16px; height: 16px; }
 .rv-volcano-legend { gap: 9px; margin-top: 4%; }
 .rv-volcano-chart { width: 86%; margin-top: 2%; }
}
/* First render review: readable category labels and a plot that earns its space. */
.rv-figure-output > strong { font-size: clamp(11px,3.9cqw,14px); }
.rv-figure-canvas { grid-template-rows: .85fr 1.15fr; }
@media(min-width:768px) {
 .journey-slide > .rv-figure-studio, .journey-slide-snapshot > .rv-figure-studio { top: 35%; }
 .journey-slide--design .journey-card-copy p { max-width: 24em; text-wrap: balance; }
}
.rv-volcano-header { display: flex; flex: none; align-items: center; justify-content: space-between; gap: 8px; }
.rv-volcano-heading { display: flex; flex: none; align-items: center; gap: 6px; }
.rv-volcano-heading > strong { color: #425a65; font-size: clamp(11px,3.1cqw,14px); font-weight: 500; white-space: nowrap; }
.rv-volcano-file { width: 23px; height: 26px; }
.rv-volcano-file .rv-icon { width: 16px; height: 16px; }
.rv-volcano-legend { gap: 8px; margin-top: 0; font-size: clamp(9px,2.5cqw,11px); }
.rv-volcano-chart { width: 100%; margin-top: 5%; }
@media(max-width:767px) {
 .rv-volcano-heading { gap: 4px; }
 .rv-volcano-file { width: 19px; height: 22px; }
 .rv-volcano-file .rv-icon { width: 14px; height: 14px; }
 .rv-volcano-legend { gap: 6px; }
 .rv-volcano-key { gap: 3px; }
 .rv-volcano-key i { width: 4px; height: 4px; }
 .rv-volcano-chart { width: 100%; margin-top: 3%; }
}
