/* 讲述工作区：一次完成一件事。仅屏幕应用，不改变印刷和书房来信。 */
@media screen {
  body.theme-c .mm-app :is(button,input,textarea,select,summary),
  body.theme-c .mm-app .mm-body,
  body.theme-c .qi-workspace {
    font-family: var(--vg-sans);
    letter-spacing: 0;
  }
  body.theme-c .mm-app .mm-body { font-size: 18px; line-height: 1.95; }
  body.theme-c .mm-app .mm-workspace-wrap { max-width: 1040px; padding: 24px 16px 80px; }
  body.theme-c .mm-app .mm-workspace-nav { display: flex; gap: 8px; padding: 0 0 24px; border-bottom: 1px solid var(--vg-line); margin-bottom: 32px; }
  body.theme-c .mm-app .mm-workspace-nav .mm-btn { flex: 1; max-width: 280px; font: 600 16px/1.5 var(--vg-sans); border-radius: var(--vg-r-sm); }
  body.theme-c .mm-app .mm-workspace-nav [aria-selected=true] { background: var(--vg-seal-soft); color: var(--vg-ink); border-color: var(--vg-seal); box-shadow: inset 0 -3px var(--vg-seal); }
  body.theme-c .mm-app .mm-workbench { display: block; max-width: 840px; margin-inline: auto; }
  body.theme-c .mm-app .mm-workbench > :is(.mm-col-side,.mm-col-main) { position: static; width: 100%; min-width: 0; max-height: none; overflow: visible; margin: 0; padding: 0; border: 0; background: transparent; }
  body.theme-c .mm-app .mm-workbench[data-mode=tell] > .mm-col-main,
  body.theme-c .mm-app .mm-workbench[data-mode=toc] > .mm-col-side { display: none; }
  body.theme-c .mm-app .mm-workbench :is(.mm-h2,.mm-story-title,h3) { font: 600 20px/1.55 var(--vg-sans); }
  body.theme-c .mm-app .mm-workbench .mm-h2 { align-items: center; margin-top: 0; padding-bottom: 16px; gap: 16px; }
  body.theme-c .mm-app .mm-workbench .mm-h2 small { display: block; font: 400 14px/1.6 var(--vg-sans); margin-top: 4px; }
  body.theme-c .mm-app .mm-workbench .mm-interview-actions { gap: 8px; margin-left: auto; }
  body.theme-c .mm-app .mm-workbench :is(p,.mm-muted) { font: 400 16px/1.85 var(--vg-sans); }
  body.theme-c .mm-app .mm-workbench .mm-card { padding: 24px; border-radius: var(--vg-r-md); }
  body.theme-c .mm-app .mm-workbench .mm-current-photo { max-height: 280px; }
  body.theme-c .mm-app .mm-workbench .mm-current-photo img { max-height: 280px; object-fit: contain; }
  body.theme-c .mm-app .mm-workbench .mm-secondary-tools { margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--vg-line); }
  body.theme-c .mm-app .mm-workbench .mm-secondary-tools > summary { font: 500 14px/1.6 var(--vg-sans); }
  @media (max-width: 760px) {
    body.theme-c .mm-app .mm-workspace-wrap { padding-top: 16px; }
    body.theme-c .mm-app .mm-workspace-nav { gap: 8px; margin-bottom: 24px; }
    body.theme-c .mm-app .mm-workspace-nav .mm-btn { font-size: 16px; padding-inline: 12px; max-width: none; }
    body.theme-c .mm-app .mm-workbench .mm-interview-actions { width: 100%; margin-left: 0; }
    body.theme-c .mm-app .mm-workbench .mm-card { padding: 24px; }
  }
}

/* ═══════════════════════════════════════════════════════════════════════════
   讲述页（采访工作区）：主壳里的一个正式整页，不是弹窗。
   版面：左边照片，右边“当前这一步”和“已保存的讲述”，底部一条固定的操作栏。
   规矩：
   · 不靠线条分区，靠留白和浅底色块；全页没有内部滚动框，只有页面自己滚。
   · 按钮三层：实心主按钮（每屏一个）/ 浅底按钮 / 带下划线的文字链接；正文永远没有底色、没有下划线。
   · 序号单独占一列，和正文隔开。
   ═══════════════════════════════════════════════════════════════════════════ */
@media screen {
  body.theme-c .qi-workspace {
    --qi-surface: color-mix(in srgb, var(--vg-ink) 6%, var(--vg-bg));    /* 区块底色 */
    --qi-raised: color-mix(in srgb, var(--vg-ink) 12%, var(--vg-bg));    /* 按钮、选项底色 */
    --qi-raised-hi: color-mix(in srgb, var(--vg-ink) 19%, var(--vg-bg)); /* 悬停 */
    --desk-control: 16px;   /* app-desk 用它给输入框定圆角 */
    display: block; color: var(--vg-ink); font: 400 16px/1.8 var(--vg-sans); letter-spacing: 0;
  }
  body.theme-c .qi-workspace:focus, body.theme-c .qi-workspace:focus-visible { outline: 0; }
  body.theme-c .qi-page { width: 100%; max-width: 1120px; margin-inline: auto; padding: 4px 16px 24px; }
  body.theme-c .qi-workspace :is(h2,h3,h4) { margin: 0; color: var(--vg-ink); font-family: var(--vg-sans); letter-spacing: 0; }
  body.theme-c .qi-workspace :is(p,label,small) { letter-spacing: 0; }
  body.theme-c .qi-workspace p { margin: 0; font: 400 16px/1.85 var(--vg-sans); }
  body.theme-c .qi-workspace small { color: var(--vg-ink2); font: 400 14px/1.7 var(--vg-sans); }

  /* 页头：标题 + 一个“稍后继续”，没有分割线 */
  body.theme-c .qi-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 8px 0 32px; }
  body.theme-c .qi-header-side { display: flex; align-items: center; gap: 8px 24px; flex-wrap: wrap; justify-content: flex-end; }
  body.theme-c .qi-header .qi-spent { color: var(--vg-ink2); font: 400 14px/1.5 var(--vg-sans); }
  body.theme-c .qi-header h2, body.theme-c #main-app .qi-workspace .qi-header h2 { font: 500 30px/1.4 var(--vg-serif); }   /* shell.css 用 #main-app 把 h2 压成 900，这里要同级压回去 */

  /* 两栏：照片固定在左，右边往下读 */
  body.theme-c .qi-content { display: grid; grid-template-columns: minmax(240px, 300px) minmax(0, 1fr); gap: 32px; align-items: start; padding-bottom: 32px; }
  body.theme-c .qi-photo { position: sticky; top: 16px; min-width: 0; }
  body.theme-c .qi-writing { display: flex; flex-direction: column; gap: 32px; min-width: 0; }
  body.theme-c .qi-panel-heading { display: flex; align-items: baseline; gap: 12px; margin: 0 0 16px; font: 500 20px/1.5 var(--vg-serif); }
  body.theme-c .qi-materials > .qi-panel-heading { margin-bottom: 0; }
  body.theme-c .qi-count { color: var(--vg-ink2); font: 400 14px/1.5 var(--vg-sans); }

  /* ── 按钮 ── */
  body.theme-c :is(.qi-workspace,.qi-photo-picker-dialog) .qi-btn,
  body.theme-c .qi-workspace .qi-seg-item {
    --desk-control: 9999px; border-radius: var(--desk-control); appearance: none; display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    min-height: 48px; padding: 0 24px; border: 0; background: var(--qi-raised); color: var(--vg-ink);
    font: 500 16px/1.4 var(--vg-sans); text-align: center; cursor: pointer; transition: background-color .2s, color .2s;
  }
  body.theme-c :is(.qi-workspace,.qi-photo-picker-dialog) .qi-btn:hover:not(:disabled) { background: var(--qi-raised-hi); }
  body.theme-c :is(.qi-workspace,.qi-photo-picker-dialog) .qi-btn:disabled,
  body.theme-c .qi-workspace .qi-seg-item:disabled { opacity: .45; cursor: not-allowed; }
  body.theme-c :is(.qi-workspace,.qi-photo-picker-dialog) .qi-btn--main { min-width: 132px; background: var(--vg-seal); color: var(--vg-on-seal); font-weight: 600; }
  body.theme-c :is(.qi-workspace,.qi-photo-picker-dialog) .qi-btn--main:hover:not(:disabled) { background: var(--vg-seal-dk); }
  body.theme-c :is(.qi-workspace,.qi-photo-picker-dialog) .qi-btn--quiet { padding: 0 8px; background: transparent; color: var(--vg-ink); text-decoration: underline; text-decoration-color: color-mix(in srgb, var(--vg-ink) 45%, transparent); text-underline-offset: 6px; text-decoration-thickness: 1.5px; }
  body.theme-c :is(.qi-workspace,.qi-photo-picker-dialog) .qi-btn--quiet:hover:not(:disabled) { background: transparent; color: var(--vg-seal); text-decoration-color: currentColor; }
  body.theme-c :is(.qi-workspace,.qi-photo-picker-dialog) .qi-btn--sm { min-height: 42px; padding: 0 16px; font-size: 14px; }
  body.theme-c :is(.qi-workspace,.qi-photo-picker-dialog) .qi-btn--danger { color: var(--vg-danger); }
  body.theme-c :is(.qi-workspace,.qi-photo-picker-dialog) .qi-btn--wide { width: 100%; margin-top: 16px; }
  body.theme-c .qi-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
  body.theme-c .qi-workspace :is(button,textarea,select,summary,input):focus-visible { outline: 2px solid var(--vg-seal); outline-offset: 3px; }

  /* 写法切换：一组连在一起的选项，当前项有底，和下面的“动作按钮”区分开 */
  body.theme-c .qi-workspace-tools { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 16px; }
  body.theme-c .qi-seg { display: inline-flex; gap: 4px; padding: 4px; border-radius: 9999px; background: var(--qi-surface); }
  body.theme-c .qi-workspace .qi-seg-item { background: transparent; color: var(--vg-ink2); }
  body.theme-c .qi-workspace .qi-seg-item:hover:not(:disabled) { color: var(--vg-ink); }
  body.theme-c .qi-workspace .qi-seg-item[aria-pressed=true] { background: var(--qi-raised-hi); color: var(--vg-ink); font-weight: 600; }

  /* 提示条 */
  body.theme-c .qi-workspace :is(.qi-status,.qi-task-status) { margin: 0; padding: 16px 24px; border-radius: 16px; background: var(--vg-seal-soft); color: var(--vg-ink); font: 400 16px/1.7 var(--vg-sans); overflow-wrap: anywhere; }
  body.theme-c .qi-task-status { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-bottom: 24px; }

  /* ── 照片 ── */
  body.theme-c .qi-photo-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  body.theme-c .qi-photo-grid:has(> :only-child) { grid-template-columns: 1fr; }
  body.theme-c .qi-photo-tile, body.theme-c .qi-photo-fig { min-width: 0; border-radius: 16px; background: var(--qi-surface); }
  body.theme-c .qi-photo-grid .mm-photo-zoom { display: block; width: 100%; }
  body.theme-c .qi-photo-grid img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 16px 16px 0 0; background: var(--qi-raised); }
  body.theme-c .qi-photo-grid > :only-child img { aspect-ratio: auto; max-height: 360px; object-fit: contain; }
  body.theme-c .qi-photo-bar { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 8px 8px 8px 12px; color: var(--vg-ink2); font: 400 14px/1.4 var(--vg-sans); white-space: nowrap; }
  body.theme-c .qi-photo-bar .qi-btn { min-height: 36px; padding: 0 12px; font-size: 14px; white-space: nowrap; }
  body.theme-c .qi-photo-fig .qi-btn { margin: 0 8px 8px; }
  body.theme-c .qi-photo-missing { padding: 24px 16px; color: var(--vg-ink2); }
  body.theme-c .qi-photo-empty { padding: 32px 24px; border-radius: 16px; background: var(--qi-surface); color: var(--vg-ink2); }
  body.theme-c .qi-observation { margin-top: 24px; }
  /* 每张照片只留一个“调整”，修图、版本、更换、移除收在里面 */
  body.theme-c .qi-menu { position: relative; }
  body.theme-c .qi-menu > summary { list-style: none; }
  body.theme-c .qi-menu > summary::-webkit-details-marker { display: none; }
  body.theme-c .qi-menu > summary::after { content: ''; width: 7px; height: 7px; margin: -4px 0 0 2px; border: solid currentColor; border-width: 0 1.5px 1.5px 0; transform: rotate(45deg); }
  body.theme-c .qi-menu[open] > summary { background: var(--qi-raised-hi); }
  body.theme-c .qi-menu-list { position: absolute; z-index: 20; left: 0; top: calc(100% + 6px); display: flex; flex-direction: column; gap: 2px; min-width: 176px; padding: 8px; border-radius: 16px; background: color-mix(in srgb, var(--vg-ink) 16%, var(--vg-bg)); box-shadow: 0 18px 48px rgba(0, 0, 0, .5); }
  body.theme-c .qi-photo-tile:nth-child(even) .qi-menu-list { left: auto; right: 0; }   /* 右边那一列向左展开，左边那一列向右展开，都不伸出照片区 */
  body.theme-c .qi-menu--up > .qi-menu-list { top: auto; bottom: calc(100% + 6px); }     /* 下面放不下（有固定操作栏）就向上弹 */
  body.theme-c .qi-photo:has(.qi-menu[open]) { z-index: 10; }                           /* sticky 的照片列自成层叠，展开时要压过页脚 */
  body.theme-c .qi-workspace .qi-menu-list .qi-btn { --desk-control: 12px; justify-content: flex-start; width: 100%; padding: 0 16px; background: transparent; }
  body.theme-c .qi-workspace .qi-menu-list .qi-btn:hover:not(:disabled) { background: var(--qi-raised-hi); }

  /* ── 当前这一步：提问 / 下一步 / 补充清单 / 整理稿，都是一块浅底卡片 ── */
  body.theme-c :is(.qi-question,.qi-next,.qi-candidate,.qi-original-preview) { padding: 32px 32px; border-radius: 24px; background: var(--qi-surface); }
  body.theme-c .qi-question h3 { margin-bottom: 16px; font: 500 24px/1.6 var(--vg-serif); }
  body.theme-c .qi-step { display: inline-block; margin-bottom: 12px; padding: 2px 16px; border-radius: 9999px; background: var(--vg-seal-soft); color: var(--vg-seal); font: 600 14px/1.9 var(--vg-sans); }
  body.theme-c .qi-hint { margin: -8px 0 16px; color: var(--vg-ink2); font: 400 14px/1.75 var(--vg-sans); }
  body.theme-c .qi-next > p { margin-bottom: 24px; font-size: 18px; }
  body.theme-c .qi-question-actions { margin-top: -12px; }
  body.theme-c .qi-options { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; margin: 0 0 16px; padding: 0; border: 0; }
  body.theme-c .mm-app .qi-options .mm-answer-option span { display: flex; align-items: center; gap: 16px; min-height: 58px; padding: 12px 24px; border: 0; border-radius: 16px; background: var(--qi-raised); box-shadow: none; color: var(--vg-ink); font: 400 18px/1.6 var(--vg-sans); }
  body.theme-c .mm-app .qi-options .mm-answer-option span::before { content: ''; flex: none; width: 22px; height: 22px; box-sizing: border-box; border: 2px solid var(--vg-ink3); border-radius: 50%; }
  body.theme-c .mm-app .qi-options .mm-answer-option span::after { content: none; }
  body.theme-c .mm-app .qi-options .mm-answer-option:hover span { background: var(--qi-raised-hi); }
  body.theme-c .mm-app .qi-options .mm-answer-option input:checked + span { background: var(--vg-seal-soft); box-shadow: inset 0 0 0 2px var(--vg-seal); }
  body.theme-c .mm-app .qi-options .mm-answer-option input:checked + span::before { border-color: var(--vg-seal); background: var(--vg-seal); box-shadow: inset 0 0 0 4px var(--vg-bg); }
  body.theme-c .mm-app .qi-options .mm-answer-option input:focus-visible + span { outline: 2px solid var(--vg-seal); outline-offset: 3px; }
  body.theme-c .qi-options legend { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  body.theme-c .qi-workspace .qi-textarea { box-sizing: border-box; display: block; width: 100%; min-height: 132px; margin: 0 0 12px; padding: 16px 16px; resize: vertical; background: var(--vg-bg); color: var(--vg-ink); border: 1px solid var(--desk-line, var(--vg-line)); font: 400 18px/1.8 var(--vg-sans); }
  body.theme-c .qi-workspace .qi-textarea::placeholder { color: var(--vg-ink3); opacity: 1; }
  body.theme-c .qi-workspace .qi-select { box-sizing: border-box; display: block; width: 100%; border: 0; min-height: 44px; padding: 8px 16px; background: var(--vg-bg); color: var(--vg-ink); font: 400 16px/1.6 var(--vg-sans); }
  body.theme-c .qi-input-tools { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-bottom: 8px; }
  body.theme-c .qi-input-tools > span { color: var(--vg-ink2); font: 400 14px/1.6 var(--vg-sans); }
  body.theme-c .qi-funnel-skip { margin-top: 16px; }
  body.theme-c .qi-proxy { margin: 8px 0 0; font: 400 14px/1.7 var(--vg-sans); }
  body.theme-c .qi-proxy label { display: flex; align-items: center; gap: 12px; min-height: 44px; color: var(--vg-ink); }
  body.theme-c .qi-proxy [data-qi-proxy-box] { padding-left: 32px; }
  body.theme-c .qi-proxy .qi-textarea { min-height: 72px; font-size: 16px; }
  body.theme-c .qi-field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 8px 0 16px; }
  body.theme-c .qi-field-grid label { display: block; color: var(--vg-ink2); font: 400 14px/1.6 var(--vg-sans); }
  body.theme-c .qi-field-grid .qi-select { margin-top: 8px; }

  /* 勾选框：深色底上自己画，未选是圆角空框，选中是实心带勾 */
  body.theme-c .qi-workspace input[type=checkbox] { appearance: none; flex: none; width: 22px; height: 22px; margin: 0; border: 2px solid var(--vg-ink3); border-radius: 8px; background: transparent; cursor: pointer; display: inline-grid; place-content: center; }
  body.theme-c .qi-workspace input[type=checkbox]::after { content: ''; width: 6px; height: 11px; margin-top: -2px; border: solid var(--vg-on-seal); border-width: 0 2.5px 2.5px 0; transform: rotate(45deg) scale(0); transition: transform .2s; }
  body.theme-c .qi-workspace input[type=checkbox]:checked { border-color: var(--vg-seal); background: var(--vg-seal); }
  body.theme-c .qi-workspace input[type=checkbox]:checked::after { transform: rotate(45deg) scale(1); }

  /* 折叠项：只是一行带小箭头的文字，展开后内容缩进，不加线 */
  body.theme-c .qi-workspace details { margin: 0; }
  body.theme-c .qi-workspace summary { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: var(--vg-ink2); font: 500 14px/1.6 var(--vg-sans); cursor: pointer; list-style: none; }
  body.theme-c .qi-workspace summary::-webkit-details-marker { display: none; }
  body.theme-c .qi-workspace details:not(.qi-menu) > summary::before { content: ''; width: 7px; height: 7px; border: solid currentColor; border-width: 1.5px 1.5px 0 0; transform: rotate(45deg); transition: transform .2s; }
  body.theme-c .qi-workspace details[open]:not(.qi-menu) > summary::before { transform: rotate(135deg); }
  body.theme-c .qi-workspace details[open]:not(.qi-menu) > :not(summary) { margin-top: 8px; }
  body.theme-c .qi-workspace details:not(.qi-menu) > :not(summary) { padding-left: 16px; }

  /* ── 已保存的讲述：序号单独一列，和正文隔开 ── */
  body.theme-c .qi-materials { display: flex; flex-direction: column; gap: 16px; }
  body.theme-c .qi-material { display: grid; grid-template-columns: 32px minmax(0, 1fr); column-gap: 24px; padding: 24px 24px; border-radius: 16px; background: var(--qi-surface); }
  body.theme-c .qi-no { display: grid; place-items: center; width: 32px; height: 32px; margin-top: 2px; border-radius: 50%; background: var(--vg-seal-soft); color: var(--vg-seal); font: 600 14px/1 var(--vg-sans); }
  body.theme-c .qi-material-main { min-width: 0; }
  body.theme-c .qi-q { display: block; margin: 4px 0 8px; color: var(--vg-ink2); font: 500 14px/1.6 var(--vg-sans); }
  body.theme-c .qi-material p { margin: 0 0 16px; color: var(--vg-ink); font: 400 18px/1.85 var(--vg-sans); white-space: pre-wrap; overflow-wrap: anywhere; }

  /* 整理稿 */
  body.theme-c .qi-kicker { display: block; margin-bottom: 8px; color: var(--vg-ink2); font: 500 14px/1.5 var(--vg-sans); letter-spacing: .04em; }
  body.theme-c .qi-candidate h3 { font: 500 24px/1.6 var(--vg-serif); }
  body.theme-c .qi-prose { margin: 24px 0; font: 400 20px/2 var(--vg-serif); white-space: pre-wrap; overflow-wrap: anywhere; }
  body.theme-c .qi-adopt-note, body.theme-c .qi-review-note { margin-top: 16px; color: var(--vg-ink2); font-size: 14px; }
  body.theme-c .qi-proxy-review { margin: 16px 0; padding: 16px 24px; border-radius: 16px; background: var(--qi-raised); font: 400 14px/1.8 var(--vg-sans); }
  body.theme-c .qi-proxy-review strong { display: block; margin-bottom: 8px; }
  body.theme-c .qi-proxy-review ul { margin: 8px 0 8px 16px; padding: 0; }
  body.theme-c .qi-proxy-review li { margin: 4px 0; overflow-wrap: anywhere; }
  body.theme-c .qi-selection article { margin-top: 12px; padding: 16px 16px; border-radius: 16px; background: var(--qi-raised); }
  body.theme-c .qi-original-preview { scroll-margin-top: 24px; }

  /* ── 补充清单卡 ── */
  body.theme-c .qi-thin h3 { margin-bottom: 12px; }
  body.theme-c .qi-thin-item { min-width: 0; margin: 0 0 16px; padding: 16px 24px 12px; border: 0; border-radius: 16px; background: var(--qi-raised); }
  body.theme-c .qi-thin-item legend { display: flex; align-items: baseline; gap: 16px; float: left; width: 100%; padding: 0; margin-bottom: 8px; color: var(--vg-ink); font: 600 18px/1.6 var(--vg-sans); }
  body.theme-c .qi-thin-item legend + * { clear: both; }
  body.theme-c .qi-thin-item .qi-btn { background: var(--qi-raised-hi); }
  body.theme-c .qi-thin-item .qi-btn:hover:not(:disabled) { background: color-mix(in srgb, var(--vg-ink) 26%, var(--vg-bg)); }
  body.theme-c .qi-thin-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 8px 0 12px; }
  body.theme-c .qi-thin .qi-chip { min-height: 44px; padding: 8px 16px; border: 0; border-radius: 9999px; background: var(--qi-surface); color: var(--vg-ink); font: 500 16px/1.5 var(--vg-sans); cursor: pointer; }
  body.theme-c .qi-thin .qi-chip:hover { background: var(--qi-raised-hi); }
  body.theme-c .qi-thin .qi-chip[aria-pressed=true] { background: var(--vg-seal-soft); box-shadow: inset 0 0 0 2px var(--vg-seal); }
  body.theme-c .qi-thin .qi-textarea { min-height: 72px; background: var(--qi-surface); font-size: 16px; }
  body.theme-c .qi-thin-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
  body.theme-c .qi-thin-unknown { display: flex; align-items: center; gap: 12px; min-height: 44px; font: 400 14px/1.6 var(--vg-sans); }

  /* “讲得差不多了？”：答题时，整理成文、保留原话、不再追问收在题目下面，不和“确定”挤在一起 */
  body.theme-c .qi-wrapup { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 16px; margin-top: -8px; padding: 0 4px; }
  body.theme-c .qi-wrapup > p { color: var(--vg-ink2); font-size: 16px; }
  body.theme-c .qi-wrapup .qi-mode { order: 5; }

  /* ── 底部操作栏：浮在页面底部的一块浅底，不加线。左边状态和积分，右边按钮，主按钮永远在最右 ── */
  body.theme-c .qi-footer { position: sticky; bottom: 12px; z-index: 5; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; padding: 16px 24px 16px 32px; border-radius: 24px; background: color-mix(in srgb, var(--vg-ink) 10%, var(--vg-bg)); box-shadow: 0 12px 40px rgba(0, 0, 0, .45); }
  body.theme-c .qi-footer-info { display: flex; flex-direction: column; min-width: 0; color: var(--vg-ink2); font: 400 14px/1.6 var(--vg-sans); }
  body.theme-c .qi-footer-info:has([data-qi-status]:empty) { display: none; }
  body.theme-c .qi-footer-info [data-qi-status] { color: var(--vg-ink); font-size: 14px; overflow-wrap: anywhere; }
  body.theme-c .qi-footer-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 12px 16px; margin-left: auto; }
  body.theme-c .qi-mode { display: inline-flex; align-items: center; gap: 12px; color: var(--vg-ink2); font: 400 14px/1.4 var(--vg-sans); }
  body.theme-c .qi-footer .qi-select { width: auto; max-width: 260px; }
  body.theme-c .qi-mode-box .qi-select { max-width: 360px; }

  /* 接着已有故事聊：单栏，一次一题 */
  body.theme-c .qi-workspace.qi-story { max-width: 760px; margin-inline: auto; }
  body.theme-c .qi-story .qi-content { grid-template-columns: minmax(0, 1fr); }
  body.theme-c .qi-story .qi-photo { display: none; }

  /* 手机：单栏，照片缩成一排在上面；操作栏贴底，按钮铺满 */
  @media (max-width: 860px) {
    body.theme-c .qi-page { padding-top: 0; }
    body.theme-c .qi-header { padding-bottom: 24px; flex-wrap: wrap; }
    body.theme-c .qi-header-side { margin-left: auto; }
    body.theme-c .qi-header h2, body.theme-c #main-app .qi-workspace .qi-header h2 { font-size: 24px; }
    body.theme-c .qi-content { grid-template-columns: minmax(0, 1fr); gap: 24px; }
    body.theme-c .qi-photo { position: static; }
    body.theme-c .qi-photo-tile:nth-child(even) .qi-menu-list { left: 0; right: auto; }
    body.theme-c .qi-photo-tile:nth-child(3n+2) .qi-menu-list { left: 50%; right: auto; transform: translateX(-50%); }
    body.theme-c .qi-photo-tile:nth-child(3n) .qi-menu-list { left: auto; right: 0; }
    body.theme-c .qi-seg { display: flex; width: 100%; }
    body.theme-c .qi-workspace .qi-seg-item { flex: 1 1 0; min-width: 0; padding: 8px 12px; }   /* 320 宽也放得下：两项各占一半，字多了换行 */
    body.theme-c .qi-photo-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
    body.theme-c .qi-photo-grid > :only-child img { max-height: 240px; }
    body.theme-c .qi-photo-bar { padding: 8px 8px 8px 12px; }
    body.theme-c .qi-photo-bar > span { display: none; }
    body.theme-c .qi-photo-bar .qi-btn { width: 100%; }
    body.theme-c .qi-photo-empty { display: none; }
    body.theme-c :is(.qi-question,.qi-next,.qi-candidate,.qi-original-preview) { padding: 24px 24px; }
    body.theme-c .qi-question h3 { font-size: 20px; }
    body.theme-c .qi-material { column-gap: 16px; padding: 16px 16px; }
    body.theme-c .qi-footer { bottom: calc(8px + env(safe-area-inset-bottom, 0px)); padding: 12px 16px; border-radius: 24px; }
    body.theme-c .qi-footer-actions { width: 100%; justify-content: stretch; }
    body.theme-c .qi-footer-actions { flex-wrap: nowrap; gap: 8px; }
    body.theme-c .qi-footer-actions > .qi-btn:not(.qi-btn--quiet) { flex: 1 1 auto; min-width: 0; padding-inline: 16px; }
    body.theme-c .qi-footer-actions > .qi-btn--quiet { flex: 0 1 auto; padding: 0 4px; line-height: 1.35; text-align: left; }
    body.theme-c .qi-footer-actions:has(> .qi-mode) { flex-wrap: wrap; }   /* 带“整理方式”的那一行：下拉独占一行，按钮在下一行 */
    body.theme-c .qi-footer .qi-mode { flex: 1 0 100%; }
    body.theme-c .qi-footer .qi-mode > span { display: none; }
    body.theme-c .qi-footer-actions:has(> .qi-mode) > .qi-btn { flex: 1 1 0; }
    body.theme-c .qi-footer .qi-select { flex: 1; max-width: none; }
    body.theme-c #main-app[data-page="talk"] #tabbar { display: none; }   /* 讲述页专心讲：隐藏底部 Tab，让出位置给操作栏 */
    body.theme-c #main-app.theme-memoir[data-group="memoir"][data-page="talk"] #view-memoir { padding-bottom: 0; }   /* 外壳给底部 Tab 留的 72～92px，Tab 已隐藏就不留，操作栏才能贴底 */
    body.theme-c .qi-field-grid { grid-template-columns: 1fr; }
  }
}

@media (prefers-reduced-motion: reduce) { body.theme-c .qi-workspace * { transition: none !important; } }

/* 未讲完的采访：摘要 + 进度 + 已用积分，一个“继续”按钮 */
.mm-resume{display:flex;align-items:center;justify-content:space-between;gap:12px}
.mm-resume-main{min-width:0;display:flex;flex-direction:column;gap:4px}
.mm-resume-main b{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mm-resume-main small{color:var(--vg-muted,#6b6b6b)}
.mm-resume .mm-btn{flex:none;min-height:44px;padding-inline:24px}


.qi-photo-picker-dialog {
  width: min(92vw, 860px);
  max-height: 88dvh;
  padding: 0;
  border: 1px solid var(--vg-line);
  border-radius: var(--vg-r-md);
  color: var(--vg-ink);
  background: var(--vg-bg);
}
.qi-photo-picker-dialog > .mm-modal { width: 100%; max-width: none; margin: 0; }
.qi-photo-picker-dialog::backdrop { background: rgb(0 0 0 / 55%); }
/* 选择照片版本：每个版本一张卡（图 + 名称），“看大图”在卡下面；不再借用照片宫格的正方形按钮 */
body.theme-c .qi-photo-picker-dialog { border: 0; }
body.theme-c .qi-photo-picker-dialog:has(.qi-versions) { width: min(92vw, 640px); }
body.theme-c .qi-photo-picker-dialog:has(.qi-versions) > .mm-modal { width: 100%; max-width: none; border: 0; border-radius: 0; background: transparent; box-shadow: none; }   /* 旧规则把里层卡片限成 560px，会和外框叠成两层 */
body.theme-c .qi-photo-picker-dialog .mm-modal { --qi-surface: color-mix(in srgb, var(--vg-ink) 6%, var(--vg-bg)); --qi-raised: color-mix(in srgb, var(--vg-ink) 12%, var(--vg-bg)); --qi-raised-hi: color-mix(in srgb, var(--vg-ink) 19%, var(--vg-bg)); padding: 32px 32px; max-height: none; overflow: visible; }
body.theme-c .qi-photo-picker-dialog .mm-modal h3 { margin: 0 0 8px; font: 500 24px/1.5 var(--vg-serif); }
.qi-version-hint { margin: 0 0 24px; color: var(--vg-ink2); font: 400 16px/1.7 var(--vg-sans); }
.qi-versions { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 16px; margin-bottom: 24px; }
.qi-version-opt { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
body.theme-c .qi-photo-picker-dialog .qi-version { --desk-control: 16px; display: flex; flex-direction: column; width: 100%; padding: 0 0 12px; border: 0; background: var(--qi-surface); color: var(--vg-ink); font: 500 16px/1.5 var(--vg-sans); text-align: center; cursor: pointer; overflow: hidden; }
body.theme-c .qi-photo-picker-dialog .qi-version:hover { background: var(--qi-raised); }
body.theme-c .qi-photo-picker-dialog .qi-version img { display: block; width: 100%; aspect-ratio: 4 / 3; max-height: none; object-fit: contain; margin-bottom: 12px; background: var(--qi-raised); }
body.theme-c .qi-photo-picker-dialog .qi-version-opt > .mm-photo-zoom { --desk-control: 9999px; display: flex; align-items: center; justify-content: center; width: 100%; min-height: 42px; padding: 0 16px; border: 0; background: var(--qi-raised); color: var(--vg-ink); font: 500 14px/1.4 var(--vg-sans); cursor: zoom-in; }
body.theme-c .qi-photo-picker-dialog .qi-version-opt > .mm-photo-zoom:hover { background: var(--qi-raised-hi); }
.qi-dialog-actions { display: flex; justify-content: flex-end; }

/* 流式留白改成两档间距：小屏取下限，≥64rem 取上限 */
@media (min-width: 64rem) {
  body.theme-c .mm-app .mm-workspace-wrap { padding: 24px 40px 80px; }
  body.theme-c .qi-page { padding: 4px 40px 24px; }
  body.theme-c .qi-content { gap: 64px; }
}
