/* AI 视频工具统一文字规范。仅作用于显式标记的工具页面。 */
:root {
  --vt-font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", Arial, sans-serif;
  --vt-title-size: 18px;
  --vt-preview-title-size: 20px;
  --vt-body-size: 14px;
  --vt-option-size: 12px;
  --vt-helper-size: 12px;
  --vt-meta-size: 11px;
  --vt-title-color: #1e293b;
  --vt-body-color: #475569;
  --vt-muted-color: #94a3b8;
  --vt-primary-color: #2563eb;
}

body.video-tool-page,
body.video-tool-page button,
body.video-tool-page input,
body.video-tool-page textarea,
body.video-tool-page select {
  font-family: var(--vt-font-sans);
}

body.video-tool-page main {
  color: var(--vt-body-color);
  font-size: var(--vt-body-size);
  line-height: 1.6;
  font-weight: 400;
}

body.video-tool-page .sidebar-item,
body.video-tool-page .sidebar-item span {
  font-size: var(--vt-option-size);
  line-height: 1.4;
  font-weight: 400;
}

/* 通用标题、表单、按钮层级 */
body.video-tool-page main .control-panel > h2,
body.video-tool-page main .control-panel h2.text-lg,
body.video-tool-page main .product-panel-title,
body.video-tool-page main .lip-sync-headline,
body.video-tool-page main .video-tool-page-title {
  color: var(--vt-title-color) !important;
  font-size: var(--vt-title-size) !important;
  line-height: 1.4 !important;
  font-weight: 700 !important;
}

body.video-tool-page main .preview-container > h2,
body.video-tool-page main .preview-container h2[style],
body.video-tool-page main .video-tool-preview-title {
  color: var(--vt-title-color) !important;
  font-size: var(--vt-preview-title-size) !important;
  line-height: 1.4 !important;
  font-weight: 700 !important;
}

body.video-tool-page main .field-label,
body.video-tool-page main .section-label,
body.video-tool-page main label.text-sm,
body.video-tool-page main label.block.text-sm,
body.video-tool-page main .video-tool-field-label {
  color: var(--vt-title-color);
  font-size: var(--vt-body-size) !important;
  line-height: 1.4;
  font-weight: 700 !important;
}

body.video-tool-page main textarea,
body.video-tool-page main select,
body.video-tool-page main input:not([type="range"]):not([type="file"]):not([type="checkbox"]):not([type="radio"]),
body.video-tool-page main .select-like,
body.video-tool-page main .mitv-select,
body.video-tool-page main .model-select,
body.video-tool-page main .custom-dropdown-item,
body.video-tool-page main .custom-dropdown-label,
body.video-tool-page main .video-tool-body-text {
  font-size: var(--vt-body-size) !important;
  line-height: 1.6;
  font-weight: 400;
}

body.video-tool-page main textarea::placeholder,
body.video-tool-page main input::placeholder {
  color: var(--vt-muted-color);
  font-size: inherit;
  font-weight: 400;
}

body.video-tool-page main .video-aspect-btn,
body.video-tool-page main .video-clarity-btn,
body.video-tool-page main .ratio-btn,
body.video-tool-page main .wan-mode-btn,
body.video-tool-page main .option-btn,
body.video-tool-page main .vr-option-btn,
body.video-tool-page main .video-tool-option-button {
  font-size: var(--vt-option-size) !important;
  line-height: 1.4 !important;
  font-weight: 600 !important;
}

body.video-tool-page main .gen-btn,
body.video-tool-page main .btn-generate,
body.video-tool-page main #generateBtn,
body.video-tool-page main #faceSwapStartBtn,
body.video-tool-page main #submitBtn,
body.video-tool-page main #downloadBtnControl,
body.video-tool-page main .video-tool-primary-button {
  font-size: var(--vt-body-size) !important;
  line-height: 1.4 !important;
  font-weight: 600 !important;
}

body.video-tool-page main .text-xs:not(input):not(textarea):not(select),
body.video-tool-page main .video-tool-helper-text {
  font-size: var(--vt-helper-size) !important;
  line-height: 1.5;
  font-weight: 400;
}

body.video-tool-page main .text-\[10px\],
body.video-tool-page main .text-\[11px\],
body.video-tool-page main .video-tool-meta-text {
  font-size: var(--vt-meta-size) !important;
  line-height: 1.4;
  font-weight: 400;
}

/* 文生视频 / 图生视频 */
body.video-tool-page main .prompt-area {
  color: var(--vt-title-color);
  font-size: var(--vt-body-size) !important;
  line-height: 1.6;
  font-weight: 400;
}

body.video-tool-page main .slider-label,
body.video-tool-page main .demo-prompt-text {
  font-size: var(--vt-body-size) !important;
  line-height: 1.6;
}

body.video-tool-page main .duration-labels,
body.video-tool-page main .char-count,
body.video-tool-page main .loading-hint,
body.video-tool-page main #resultMeta {
  font-size: var(--vt-meta-size) !important;
  line-height: 1.4;
}

body.video-tool-page main .demo-prompt-toggle,
body.video-tool-page main #errorMsg {
  font-size: var(--vt-helper-size) !important;
  line-height: 1.5;
}

/* 带货视频：提升旧版 8–10px 文字，并保持选项/说明层级。 */
body.video-tool-page.product-video-active main .product-mode-card strong,
body.video-tool-page.product-video-active main .product-model-source-card strong,
body.video-tool-page.product-video-active main .product-source-card strong,
body.video-tool-page.product-video-active main .product-handheld-method button,
body.video-tool-page.product-video-active main .product-pose-source-mode button,
body.video-tool-page.product-video-active main .product-model-setting-mode button,
body.video-tool-page.product-video-active main .product-model-chip,
body.video-tool-page.product-video-active main .product-option-group button,
body.video-tool-page.product-video-active main .product-pose-scene span {
  font-size: var(--vt-option-size) !important;
  line-height: 1.4 !important;
  font-weight: 600 !important;
}

body.video-tool-page.product-video-active main .product-mode-card small,
body.video-tool-page.product-video-active main .product-subchoice-title span,
body.video-tool-page.product-video-active main .product-model-source-card small,
body.video-tool-page.product-video-active main .product-upload-zone small,
body.video-tool-page.product-video-active main .product-source-card small,
body.video-tool-page.product-video-active main .product-field-hint,
body.video-tool-page.product-video-active main .product-info-note,
body.video-tool-page.product-video-active main .product-pose-empty,
body.video-tool-page.product-video-active main .product-pose-upload small,
body.video-tool-page.product-video-active main .product-pose-card small,
body.video-tool-page.product-video-active main .product-pose-note,
body.video-tool-page.product-video-active main .product-model-custom-fields > p,
body.video-tool-page.product-video-active main .product-aspect-warning,
body.video-tool-page.product-video-active main .product-preview-heading > div > span,
body.video-tool-page.product-video-active main .product-preview-empty > p,
body.video-tool-page.product-video-active main .product-preview-source > p,
body.video-tool-page.product-video-active main .product-preview-progress > p,
body.video-tool-page.product-video-active main .product-video-result > p,
body.video-tool-page.product-video-active main .product-preview-error > p {
  color: var(--vt-muted-color);
  font-size: var(--vt-helper-size) !important;
  line-height: 1.5 !important;
  font-weight: 400 !important;
}

body.video-tool-page.product-video-active main .product-step-caption,
body.video-tool-page.product-video-active main .product-model-lock,
body.video-tool-page.product-video-active main .product-preview-badge,
body.video-tool-page.product-video-active main .product-flow-steps small,
body.video-tool-page.product-video-active main .product-preview-stage-label,
body.video-tool-page.product-video-active main .product-review-grid > div > span {
  font-size: var(--vt-meta-size) !important;
  line-height: 1.4 !important;
  font-weight: 500 !important;
}

body.video-tool-page.product-video-active main .product-subchoice-title strong,
body.video-tool-page.product-video-active main .product-fixed-model > label,
body.video-tool-page.product-video-active main .product-param-row > label,
body.video-tool-page.product-video-active main .product-section-label-row label,
body.video-tool-page.product-video-active main .product-handheld-method > span,
body.video-tool-page.product-video-active main .product-model-option-row > span,
body.video-tool-page.product-video-active main .product-model-custom-fields label {
  color: var(--vt-title-color);
  font-size: var(--vt-body-size) !important;
  line-height: 1.4 !important;
  font-weight: 700 !important;
}

body.video-tool-page.product-video-active main .product-section-label-row > span,
body.video-tool-page.product-video-active main .product-image2-head > div span,
body.video-tool-page.product-video-active main .product-image2-head > span {
  font-size: var(--vt-meta-size) !important;
  line-height: 1.4 !important;
}

body.video-tool-page.product-video-active main .product-fixed-model > div,
body.video-tool-page.product-video-active main .product-upload-zone strong,
body.video-tool-page.product-video-active main .product-image2-head strong,
body.video-tool-page.product-video-active main .product-pose-upload strong,
body.video-tool-page.product-video-active main .product-pose-card strong,
body.video-tool-page.product-video-active main .product-model-option-row select,
body.video-tool-page.product-video-active main .product-model-custom-fields textarea,
body.video-tool-page.product-video-active main .product-prompt {
  font-size: var(--vt-body-size) !important;
  line-height: 1.6 !important;
}

body.video-tool-page.product-video-active main .product-secondary-action,
body.video-tool-page.product-video-active main .product-primary-action,
body.video-tool-page.product-video-active main .product-review-actions button,
body.video-tool-page.product-video-active main .product-review-actions a,
body.video-tool-page.product-video-active main .product-video-result button,
body.video-tool-page.product-video-active main .product-preview-error button {
  font-size: var(--vt-body-size) !important;
  line-height: 1.4 !important;
  font-weight: 600 !important;
}

body.video-tool-page.product-video-active main .product-preview-heading strong {
  color: var(--vt-title-color);
  font-size: var(--vt-title-size) !important;
  line-height: 1.4 !important;
  font-weight: 700 !important;
}

body.video-tool-page.product-video-active main .product-preview-empty > strong,
body.video-tool-page.product-video-active main .product-preview-progress > strong {
  color: var(--vt-title-color);
  font-size: var(--vt-preview-title-size) !important;
  line-height: 1.4 !important;
  font-weight: 700 !important;
}

body.video-tool-page.product-video-active main .product-preview-source > strong,
body.video-tool-page.product-video-active main .product-video-result > strong,
body.video-tool-page.product-video-active main .product-preview-error > strong {
  color: var(--vt-title-color);
  font-size: var(--vt-title-size) !important;
  line-height: 1.4 !important;
  font-weight: 700 !important;
}

body.video-tool-page.product-video-active main .product-flow-steps strong {
  font-size: var(--vt-option-size) !important;
  line-height: 1.4 !important;
  font-weight: 600 !important;
}

/* 多图、编辑、口型、换脸、复刻 */
body.video-tool-page main .upload-box p.text-sm,
body.video-tool-page main .upload-box span.text-xs,
body.video-tool-page main .rules-popover,
body.video-tool-page main .upload-hint,
body.video-tool-page main .adv-help,
body.video-tool-page main .task-line {
  font-size: var(--vt-helper-size) !important;
  line-height: 1.5;
}

body.video-tool-page main .history-time,
body.video-tool-page main .history-latest-meta,
body.video-tool-page main .history-latest-header span:last-child,
body.video-tool-page main .step-txt,
body.video-tool-page main .bar-fill {
  font-size: var(--vt-meta-size) !important;
  line-height: 1.4;
}

body.video-tool-page main .preview-container h2[style*="1.5rem"],
body.video-tool-page main .video-edit-preview-column .preview-container h2,
body.video-tool-page main .video-comparison + h2,
body.video-tool-page main .lip-sync-headline,
body.video-tool-page main .video-replication-preview-column .preview-container h3,
body.video-tool-page main .guide-title {
  font-size: var(--vt-preview-title-size) !important;
  line-height: 1.4 !important;
  font-weight: 700 !important;
}

body.video-tool-page main .adv-label,
body.video-tool-page main .control-panel-scroll label.block {
  color: var(--vt-title-color);
  font-size: var(--vt-body-size) !important;
  line-height: 1.4;
  font-weight: 700 !important;
}

body.video-tool-page main #prompt,
body.video-tool-page main #promptInput {
  font-size: var(--vt-body-size) !important;
  line-height: 1.6 !important;
  font-weight: 400 !important;
}

/* 本地综合编辑器壳层；跨域 iframe 内部不受影响。 */
body.video-tool-page #errorContainer h3 {
  color: var(--vt-title-color);
  font-size: var(--vt-title-size);
  line-height: 1.4;
  font-weight: 700;
}

body.video-tool-page #errorContainer p {
  color: var(--vt-body-color);
  font-size: var(--vt-body-size);
  line-height: 1.6;
}

body.video-tool-page #errorContainer button {
  font-size: var(--vt-body-size);
  line-height: 1.4;
  font-weight: 600;
}

@media (max-width: 640px) {
  body.video-tool-page.product-video-active main .product-image2-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
  }

  body.video-tool-page.product-video-active main .product-image2-head > div {
    min-width: 0;
  }

  body.video-tool-page.product-video-active main .product-image2-head > div span,
  body.video-tool-page.product-video-active main .product-image2-head strong {
    white-space: nowrap;
  }
}
