/*
 * Shared user-facing typography system.
 *
 * Keep typography semantic: new features should reuse the existing title,
 * label, control and helper classes instead of adding page-specific sizes.
 * This file is intentionally loaded after feature/theme styles so legacy
 * one-off declarations converge without changing layout or business logic.
 */

:root {
  --aotu-type-page-title-size: 24px;
  --aotu-type-page-title-leading: 1.25;
  --aotu-type-section-title-size: 18px;
  --aotu-type-section-title-leading: 1.3;
  --aotu-type-card-title-size: 15px;
  --aotu-type-card-title-leading: 1.35;
  --aotu-type-label-size: 14px;
  --aotu-type-label-leading: 1.4;
  --aotu-type-control-size: 14px;
  --aotu-type-control-leading: 1.45;
  --aotu-type-compact-label-size: 12px;
  --aotu-type-compact-value-size: 13px;
  --aotu-type-compact-leading: 1.4;
  --aotu-type-body-size: 14px;
  --aotu-type-body-leading: 1.6;
  --aotu-type-helper-size: 12px;
  --aotu-type-helper-leading: 1.5;
  --aotu-type-caption-size: 11px;
  --aotu-type-caption-leading: 1.4;
  --aotu-type-action-size: 14px;
  --aotu-type-action-leading: 1.25;
  --aotu-type-setting-group-color: #5c50d9;
  --aotu-type-regular: var(--aotu-weight-regular, 400);
  --aotu-type-medium: var(--aotu-weight-medium, 500);
  --aotu-type-semibold: var(--aotu-weight-semibold, 600);
}

html,
body {
  font-family: var(--aotu-font-sans, "Inter", "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", system-ui, -apple-system, sans-serif);
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}

button,
input,
select,
textarea {
  font: inherit;
}

/* Shared workbench hierarchy: page and section titles. */
.task-heading h2,
.free-hero-copy h1,
.pet-studio-heading h1,
.pet-center-heading h1 {
  font-size: var(--aotu-type-page-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-page-title-leading) !important;
  letter-spacing: 0 !important;
}

.settings-head strong,
.section-head h2,
.pet-panel-title h2,
.pet-result-title h2,
.ai-assistant-heading h2 {
  font-size: var(--aotu-type-section-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-section-title-leading) !important;
  letter-spacing: 0 !important;
}

.feature-head strong,
.advanced-title strong,
.upload-card strong,
.upload-instant-copy strong,
.free-page-empty-state strong,
.free-page-reference-card strong,
.pet-feature-copy h3,
.pet-tool-card b,
.pet-upload-slot label b,
.pet-use-asset b,
.pet-reference-row b,
.background-official-material-copy strong,
.ai-assistant-answer-head h3 {
  font-size: var(--aotu-type-card-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-card-title-leading) !important;
  letter-spacing: 0 !important;
}

/* Settings group labels. */
.experience-label,
.buyer-filter-title,
.set-mode-label,
.pet-fashion-setting-label,
.generate-count-label,
.generate-count-box > span,
.detail-reference-head span,
.detail-style-preset-head span,
.detail-page-module-head span,
.detail-page-count-label,
.wrinkle-strength-title,
.free-page-prompt > span,
.free-page-setting-row > span,
.extra-prompt-box > span,
.video-reference-url-box > span,
.experience-field > span,
.pet-field > span,
.pet-instruction > span,
.pet-modal form label > span,
.pet-option-group legend,
.pet-instruction-heading > label,
.ai-assistant-form > label,
.ai-assistant-answer-section h4,
.ai-assistant-section-head h4 {
  font-size: var(--aotu-type-label-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-label-leading) !important;
  letter-spacing: 0 !important;
}

/*
 * Workbench setting-group titles use one shared accent color. Keep page
 * titles, settings-card titles, option names, field metadata and helper copy
 * outside this contract so the visual hierarchy remains intact.
 */
html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel :is(
  .video-setting-block > .experience-label,
  .video-reference-url-box > span,
  .set-product-type-controls > .experience-label,
  .set-model-role-field > .experience-label,
  .set-shot-field > .experience-label,
  .buyer-filter-title,
  .set-mode-label,
  .pet-fashion-setting-label,
  .detail-reference-head > span:first-child,
  .detail-page-module-head > span:first-child,
  .detail-product-type-row > span:first-child,
  .extra-prompt-box > #extra-prompt-label,
  .print-extract-section-head > strong,
  .poster-design-section-head > strong,
  .outfit-recommend-section-head > strong,
  .flat-lay-product-type-card > strong,
  .view-angle-row > span,
  .text-edit-head > span > strong,
  .buyer-tryon-shop-field > span,
  .buyer-tryon-product-type-row > span,
  .buyer-tryon-max-field > span
) {
  color: var(--aotu-type-setting-group-color) !important;
}

/* Feature-specific shells use the same semantic title color as the shared
 * workbench. These selectors stay narrow so field values and helper copy do
 * not inherit the accent color. */
html body.feature-focus-mode[data-active-feature="free-generate"] :is(
  .free-page-prompt > span,
  .free-page-setting-row > span
),
html body.feature-focus-mode.workstation-feature-mode[data-active-feature="wrinkle"] .wrinkle-strength-title,
html body.feature-focus-mode.workstation-feature-mode:is([data-active-feature="outpaint"], [data-active-feature="view-change"]) #settings-card #settings-title,
html body :is(
  .pet-field > span,
  .pet-instruction > span,
  .pet-option-group > legend,
  .pet-instruction-heading > label
) {
  color: var(--aotu-type-setting-group-color) !important;
}

html body.feature-focus-mode.workstation-feature-mode:is([data-active-feature="outpaint"], [data-active-feature="view-change"]) #settings-card #settings-title {
  font-size: var(--aotu-type-label-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-label-leading) !important;
  letter-spacing: 0 !important;
}

/* Interactive text. Icon-only controls and badges are deliberately excluded. */
.choice-button,
.prompt-option strong,
.slider-row,
.switch-row,
.count-option,
.count-option-main,
.resolution-option,
.print-compact-menu button,
.set-ratio-select summary,
.set-ratio-menu button,
.detail-page-select-field summary,
.detail-page-select-field summary span,
.detail-page-select-field summary strong,
.detail-page-select-menu button,
.detail-count-select,
.detail-module-option strong,
.detail-style-preset-button span,
.detail-reference-button strong,
.wrinkle-strength-button,
.free-page-select summary,
.free-page-select-menu button,
.free-page-segment button,
.mobile-free-ratio-toggle > span,
.mobile-free-ratio-toggle > strong,
.mobile-outpaint-ratio-toggle > span,
.mobile-outpaint-ratio-toggle > strong,
.experience-field input,
.experience-field textarea,
.extra-prompt-box textarea,
.video-reference-url-box textarea,
.pet-field select,
.pet-instruction textarea,
.pet-modal input,
.pet-modal select,
.pet-modal textarea,
.pet-option-group button,
.pet-mini-upload,
.ai-assistant-compose textarea,
.ai-assistant-clarification-choices button {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-control-leading) !important;
  letter-spacing: 0 !important;
}

/* Descriptions, hints and secondary copy. */
.task-heading p,
.free-hero-copy p,
.feature-head small,
.advanced-title small,
.upload-card small,
.upload-instant-copy small,
.free-page-empty-state small,
.free-page-reference-card small,
.choice-button small,
.prompt-option small,
.generate-count-label small,
.print-compact-select summary small,
.detail-count-note,
.detail-reference-head small,
.detail-reference-button small,
.detail-style-preset-head small,
.detail-style-preset-button small,
.detail-style-note small,
.detail-page-module-head small,
.detail-page-module-card label small,
.setting-note,
.experience-upload-button small,
.pet-panel-title p,
.pet-upload-slot label span,
.pet-use-asset small,
.pet-reference-row span,
.background-official-material-copy small,
.pet-field em,
.pet-instruction em,
.pet-instruction small,
.pet-generate-bar small,
.ai-assistant-heading p,
.ai-assistant-privacy,
.ai-assistant-status,
.ai-assistant-answer-section > p,
.ai-assistant-answer-footer small,
.ai-assistant-followup-note,
.ai-assistant-launcher-copy small {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

/* Compact metadata stays compact, but uses one consistent caption style. */
.settings-head span,
.detail-module-count > span,
.pet-panel-title > span,
.pet-result-title > div > span,
.ai-assistant-eyebrow,
.ai-assistant-answer-kicker,
.ai-assistant-confidence,
.ai-assistant-compose-footer > span {
  font-size: var(--aotu-type-caption-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-caption-leading) !important;
  letter-spacing: 0 !important;
}

/* Primary and secondary text actions. */
.create-button,
.outline-button,
.free-page-upload-button,
.free-page-clear-button,
.free-page-generate-button,
.library-select-button,
.clear-upload-button,
.video-script-entry-button,
.prompt-optimize-button,
.pet-primary,
.pet-secondary,
.pet-generate-button,
.pet-copy-plan-button,
.ai-assistant-compose-footer button,
.ai-assistant-go-button,
.ai-assistant-copy-button {
  font-size: var(--aotu-type-action-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-action-leading) !important;
  letter-spacing: 0 !important;
}

/* Marketing and legal surfaces share weight rules while retaining display sizes. */
.platform-hero h1,
.platform-section-head h2,
.platform-legal-shell h1,
.platform-contact-header h1,
.growth-hero h1,
.growth-section-head h2,
.mobile-platform-hero h1,
.personal-view-title,
.personal-section-title {
  font-weight: var(--aotu-type-semibold) !important;
  letter-spacing: 0 !important;
}

.platform-hero p,
.platform-section-head span,
.platform-legal-shell p,
.platform-contact-header p,
.growth-hero p,
.growth-section-head p,
.mobile-platform-hero p {
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-body-leading) !important;
}

@media (max-width: 760px) {
  :root {
    --aotu-type-page-title-size: 21px;
    --aotu-type-section-title-size: 17px;
    --aotu-type-card-title-size: 14px;
    --aotu-type-label-size: 13px;
    --aotu-type-control-size: 13px;
    --aotu-type-compact-label-size: 11px;
    --aotu-type-compact-value-size: 12px;
    --aotu-type-body-size: 13px;
    --aotu-type-helper-size: 11px;
    --aotu-type-caption-size: 10px;
    --aotu-type-action-size: 13px;
  }
}

/* The shared merchant mobile shell has many historical !important rules.
 * Keep the same semantic scale without changing any component dimensions. */
html[data-mobile-workbench="true"] {
  --aotu-type-page-title-size: 21px;
  --aotu-type-section-title-size: 17px;
  --aotu-type-card-title-size: 14px;
  --aotu-type-label-size: 13px;
  --aotu-type-control-size: 13px;
  --aotu-type-compact-label-size: 11px;
  --aotu-type-compact-value-size: 12px;
  --aotu-type-body-size: 13px;
  --aotu-type-helper-size: 11px;
  --aotu-type-caption-size: 10px;
  --aotu-type-action-size: 13px;
}

/* Legacy workbench rules use long, important selectors. These scoped
 * compatibility selectors make the semantic tokens authoritative without
 * leaking into previews, result artwork, badges or icon-only controls. */
html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #preview-kicker {
  font-size: var(--aotu-type-caption-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-caption-leading) !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #preview-title {
  font-size: var(--aotu-type-page-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-page-title-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #preview-subtitle {
  font-size: var(--aotu-type-body-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-body-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #settings-title {
  font-size: var(--aotu-type-section-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-section-title-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #upload-title,
html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #product-upload #upload-title,
html body.feature-focus-mode.workstation-feature-mode[data-active-feature] .upload-instant-copy strong {
  font-size: var(--aotu-type-card-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-card-title-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #upload-note,
html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #product-upload #upload-note,
html body.feature-focus-mode.workstation-feature-mode[data-active-feature] .upload-instant-copy small {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] .task-body :is(
  .experience-label,
  .buyer-filter-title,
  .set-mode-label,
  .pet-fashion-setting-label,
  .generate-count-label,
  .wrinkle-strength-title,
  .detail-reference-head span,
  .detail-style-preset-head span,
  .detail-page-module-head span
) {
  font-size: var(--aotu-type-label-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-label-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] .task-body :is(
  .choice-button,
  .wrinkle-strength-button,
  .count-option,
  .count-option-main,
  .resolution-option,
  .print-compact-menu button,
  .detail-page-select-field summary,
  .detail-page-select-field summary span,
  .detail-page-select-field summary strong,
  .detail-page-select-menu button,
  .detail-count-select,
  .detail-count-menu button,
  .detail-module-option strong,
  .detail-page-module-card label strong,
  .detail-reference-button strong,
  .detail-style-preset-button span
) {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-control-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] .task-body :is(
  .choice-button small,
  .generate-count-label small,
  .print-compact-select summary small,
  .detail-count-note,
  .detail-reference-head small,
  .detail-reference-button small,
  .detail-style-preset-head small,
  .detail-style-preset-button small,
  .detail-page-module-head small,
  .detail-page-module-card label small
) {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] .settings-column :is(
  .extra-prompt-box > span,
  .video-reference-url-box > span,
  .background-official-material-copy strong
) {
  font-size: var(--aotu-type-label-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-label-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] .settings-column :is(
  .extra-prompt-box textarea,
  .video-reference-url-box textarea
) {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-body-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] .settings-column .background-official-material-copy small {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] .settings-bottom-area :is(
  summary span,
  summary strong,
  .mobile-free-ratio-toggle > span,
  .mobile-free-ratio-toggle > strong,
  .mobile-outpaint-ratio-toggle > span,
  .mobile-outpaint-ratio-toggle > strong,
  .count-option,
  .count-option-main,
  .resolution-option,
  .print-compact-menu button,
  .set-ratio-menu button
) {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-control-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #generate {
  font-size: var(--aotu-type-action-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-action-leading) !important;
  letter-spacing: 0 !important;
}

html[data-mobile-workbench="true"] body.feature-focus-mode.workstation-feature-mode[data-active-feature] #preview-kicker {
  font-size: var(--aotu-type-caption-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-caption-leading) !important;
  letter-spacing: 0 !important;
}

html[data-mobile-workbench="true"] body.feature-focus-mode.workstation-feature-mode[data-active-feature] #preview-title {
  font-size: var(--aotu-type-page-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-page-title-leading) !important;
  letter-spacing: 0 !important;
}

html[data-mobile-workbench="true"] body.feature-focus-mode.workstation-feature-mode[data-active-feature] #preview-subtitle {
  font-size: var(--aotu-type-body-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-body-leading) !important;
  letter-spacing: 0 !important;
}

html[data-mobile-workbench="true"] body.feature-focus-mode.workstation-feature-mode[data-active-feature] #settings-title {
  font-size: var(--aotu-type-section-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-section-title-leading) !important;
  letter-spacing: 0 !important;
}

html[data-mobile-workbench="true"] body.feature-focus-mode.workstation-feature-mode[data-active-feature] :is(
  .experience-label,
  .buyer-filter-title,
  .set-mode-label,
  .pet-fashion-setting-label,
  .generate-count-label,
  .wrinkle-strength-title,
  .extra-prompt-box > span,
  .video-reference-url-box > span
) {
  font-size: var(--aotu-type-label-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-label-leading) !important;
  letter-spacing: 0 !important;
}

html[data-mobile-workbench="true"] body.feature-focus-mode.workstation-feature-mode[data-active-feature] :is(
  #upload-title,
  .upload-instant-copy strong
) {
  font-size: var(--aotu-type-card-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-card-title-leading) !important;
  letter-spacing: 0 !important;
}

html[data-mobile-workbench="true"] body.feature-focus-mode.workstation-feature-mode[data-active-feature] :is(
  #upload-note,
  .upload-instant-copy small,
  .choice-button small,
  .generate-count-label small,
  .print-compact-select summary small,
  .detail-count-note,
  .detail-reference-head small,
  .detail-reference-button small,
  .detail-style-preset-head small,
  .detail-style-preset-button small,
  .detail-page-module-head small,
  .detail-page-module-card label small
) {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

html[data-mobile-workbench="true"] body.feature-focus-mode.workstation-feature-mode[data-active-feature] #product-upload #upload-title {
  font-size: var(--aotu-type-card-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-card-title-leading) !important;
  letter-spacing: 0 !important;
}

html[data-mobile-workbench="true"] body.feature-focus-mode.workstation-feature-mode[data-active-feature] #product-upload #upload-note {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

html[data-mobile-workbench="true"] body.feature-focus-mode.workstation-feature-mode[data-active-feature] :is(
  .choice-button,
  .wrinkle-strength-button,
  .count-option,
  .count-option-main,
  .resolution-option,
  .print-compact-menu button,
  .detail-page-select-field summary,
  .detail-page-select-field summary span,
  .detail-page-select-field summary strong,
  .detail-page-select-menu button,
  .detail-count-select,
  .detail-count-menu button,
  .detail-module-option strong,
  .detail-page-module-card label strong,
  .detail-reference-button strong,
  .detail-style-preset-button span,
  .extra-prompt-box textarea,
  .video-reference-url-box textarea,
  .mobile-free-ratio-toggle > span,
  .mobile-free-ratio-toggle > strong,
  .mobile-outpaint-ratio-toggle > span,
  .mobile-outpaint-ratio-toggle > strong,
  .print-compact-select summary > span,
  .print-compact-select summary > strong
) {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-control-leading) !important;
  letter-spacing: 0 !important;
}

html[data-mobile-workbench="true"] body.feature-focus-mode.workstation-feature-mode[data-active-feature] #generate {
  font-size: var(--aotu-type-action-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-action-leading) !important;
  letter-spacing: 0 !important;
}

/* Feature-specific legacy components still carry one-off weights. Map them to
 * the same semantic roles through the stable workbench containers. */
html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel :is(
  .background-preset-divider,
  #flat-lay-product-type-title,
  .flat-lay-background-card .print-extract-section-head > strong,
  .live-sticker-section-head > strong,
  .outfit-recommend-section-head > strong,
  .poster-design-section-head > strong,
  .text-edit-head > span > strong,
  .print-extract-setting-card .print-extract-section-head > strong,
  .buyer-tryon-max-field > span,
  .video-profile-menu-section-title > span
) {
  font-size: var(--aotu-type-label-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-label-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel :is(
  .try-on-garment-upload,
  .live-sticker-reference-button,
  .poster-design-reference-button
) .upload-copy > strong {
  font-size: var(--aotu-type-card-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-card-title-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel :is(
  .background-mode-tabs > button,
  .model-bg-grid > button > strong,
  .flat-lay-product-type-grid > button,
  .outfit-recommend-element-grid .choice-button > strong,
  .outfit-recommend-style-grid .choice-button > strong,
  .poster-design-style-grid .poster-design-type-copy > strong,
  .outpaint-preset-grid .outpaint-preset-text > strong,
  .pose-type-tabs > .pose-type-button,
  .pose-selection-summary > span > strong,
  .print-extract-mode-grid .choice-button > span > strong,
  .set-model-role-grid > .set-model-role-button > span,
  .set-model-style-grid > .set-model-style-button > span,
  .buyer-tryon-shop-summary > strong,
  .buyer-tryon-shop-summary > button
) {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-control-leading) !important;
  letter-spacing: 0 !important;
}

/* Keep the recolor cards at their established size while allowing the
 * feature-specific compact color names to remain visually smaller. */
html body.feature-focus-mode.workstation-feature-mode[data-active-feature="colors"] #task-panel .swatch-grid > .swatch-button {
  font-size: 10px !important;
}

html[data-mobile-workbench="true"] body.feature-focus-mode.workstation-feature-mode[data-active-feature="colors"] #task-panel .swatch-grid > .swatch-button {
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel .view-orbit-card > small {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel .view-angle-row > span,
html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel .view-angle-row > output {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-control-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel #prompt-optimize-button > span,
html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel #video-material-mention-button {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-control-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel .reverse-prompt-copy-button > span {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel #video-script-button > span {
  font-size: var(--aotu-type-action-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-action-leading) !important;
  letter-spacing: 0 !important;
}

/* Video profiles and compact selectors use the same title/control/helper
 * hierarchy as image tools; badges stay compact but are no longer extra-bold. */
html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel .video-compact-select > summary > span {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-control-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel .video-compact-select > summary > strong,
html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel .video-profile-name {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-control-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel .video-compact-menu > button {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-control-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel .video-profile-description {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel :is(
  .video-profile-recommended-badge,
  .video-profile-official-badge,
  .video-profile-credit,
  .count-discount-badge,
  .detail-style-recommend-badge
) {
  font-size: var(--aotu-type-caption-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-caption-leading) !important;
  letter-spacing: 0 !important;
}

/* Bottom controls are descendants of #task-panel so these rules also outrank
 * historical :is(... #inline-model-section ...) mobile selectors. */
html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel :is(
  .mobile-free-ratio-toggle,
  .mobile-outpaint-ratio-toggle
) > span,
html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel #free-bottom-ratio-section .mobile-free-ratio-toggle > span,
html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel :is(
  .print-count-select,
  .print-resolution-select,
  .detail-resolution-select,
  .set-ratio-select,
  .video-bottom-options .video-compact-select
) > summary > span {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-control-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel :is(
  .mobile-free-ratio-toggle,
  .mobile-outpaint-ratio-toggle
) > strong:not(.parameter-control-value),
html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel #free-bottom-ratio-section .mobile-free-ratio-toggle > strong:not(.parameter-control-value),
html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel :is(
  .print-count-select,
  .print-resolution-select,
  .detail-resolution-select,
  .set-ratio-select,
  .video-bottom-options .video-compact-select
) > summary > strong:not(.parameter-control-value) {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-control-leading) !important;
  letter-spacing: 0 !important;
}

/* All ratio/count/resolution buttons share one value element. The surrounding
 * menus remain feature-specific because their available choices differ. */
html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel .settings-bottom-area .parameter-control-value {
  font-size: var(--aotu-type-helper-size) !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel :is(
  .print-compact-menu,
  .detail-resolution-menu,
  .set-ratio-menu,
  .video-bottom-options .video-compact-menu
) > button {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-control-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel #extra-prompt-label {
  font-size: var(--aotu-type-label-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-label-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel #extra-prompt {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-body-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel #generate > span {
  font-size: var(--aotu-type-action-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-action-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel #generate > :is(small, .generation-credit-cost) {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel .mobile-outpaint-preset-grid button strong {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-control-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel .mobile-outpaint-preset-grid button small {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

/* Independent pet surface and the shared assistant use the same restrained
 * three-weight system outside the merchant workbench. */
.pet-mobile-brand,
.pet-feature-icon,
.pet-result-empty > div span,
.ai-assistant-launcher-copy strong {
  font-weight: var(--aotu-type-semibold) !important;
}

.pet-mini-upload span,
.ai-assistant-question {
  font-weight: var(--aotu-type-medium) !important;
}

.pet-option-group.is-locked legend small {
  font-weight: var(--aotu-type-regular) !important;
}

/* Secondary workbench surfaces use the same roles as the settings column. */
html body :is(.task-recent-head strong, .video-latest-toolbar > span) {
  font-weight: var(--aotu-type-semibold) !important;
}

html body .video-latest-toolbar > span > small,
html body :is(.video-latest-toolbar > button, .reference-preview-chip > span) {
  font-weight: var(--aotu-type-medium) !important;
}

html body :is(.pose-preview-note, .set-preview-card.is-empty > small) {
  font-weight: var(--aotu-type-regular) !important;
}

html body :is(.experience-upload-button strong, .set-preview-card.is-empty > strong) {
  font-weight: var(--aotu-type-semibold) !important;
}

/* Platform, growth and legal pages keep their intentional display sizes while
 * sharing the same regular / medium / semibold weight vocabulary. */
:is(
  .platform-theme-toggle > span,
  .platform-kicker,
  .industry-directory-number,
  .industry-directory-row > em,
  .industry-preview-hint,
  .mobile-theme-toggle > span,
  .mobile-platform-actions > a,
  .mobile-hero-copy > span,
  .mobile-section-head > span,
  .mobile-industry-card > em,
  .personal-actions :is(.theme-button, .credit-pill) > span,
  .personal-tabbar > button > span,
  .growth-nav > a,
  .growth-kicker,
  .growth-section-head > span,
  .workflow-steps > article > em,
  .workflow-visual figcaption,
  .trial-copy > span,
  .trial-points > span,
  .platform-contact-header > span,
  .platform-contact-qrcode > p,
  .platform-contact-row > span
) {
  font-weight: var(--aotu-type-medium) !important;
}

:is(
  .platform-auth-button,
  .platform-primary-action > span,
  .industry-directory-row > strong,
  #industry-preview-title,
  .industry-preview-action > span,
  .mobile-primary-action > span,
  .mobile-section-head > h2,
  .mobile-industry-card > strong,
  .personal-hero-copy > h1,
  .tool-section-copy > strong,
  .config-state-card > strong,
  .config-state-card > button,
  .growth-top-cta,
  .growth-primary,
  .growth-secondary,
  .growth-proof-row strong,
  .problem-grid article > strong,
  .workflow-steps article strong,
  .scene-grid article strong,
  .trial-copy > h2,
  .form-head > strong,
  .lead-form > label,
  .lead-form > button,
  .platform-legal-back,
  .platform-legal-shell section > h2,
  .platform-contact-row > :is(a, strong)
) {
  font-weight: var(--aotu-type-semibold) !important;
}

:is(
  .personal-hero-copy > p,
  .tool-section-copy > small
) {
  font-weight: var(--aotu-type-regular) !important;
}

/* Industry entry pages: navigation, hero copy and feature cards. */
html body :is(
  .side-nav .nav-primary,
  #works-card strong,
  .hero-text > h1,
  .hero-title-accent,
  .section-head > h2,
  .mobile-merchant-shortcuts > button > strong
) {
  font-weight: var(--aotu-type-semibold) !important;
}

html body :is(
  #language-switcher-label,
  #industry-select-button,
  .top-library-tabs > button,
  .workspace-theme-toggle > span,
  .advanced-chip,
  .mobile-bottom-nav-item > strong
) {
  font-weight: var(--aotu-type-medium) !important;
}

html body #works-status {
  font-weight: var(--aotu-type-regular) !important;
}

html body .wrinkle-latest-toolbar > span,
html body .mobile-merchant-showcase-side > span {
  font-weight: var(--aotu-type-semibold) !important;
}

html[data-mobile-workbench="true"] body .mobile-merchant-edition {
  font-weight: var(--aotu-type-medium) !important;
}

html body .advanced-title > strong,
html body .workspace .advanced-grid .advanced-card .advanced-title > strong,
html body #advanced-functions .advanced-card .advanced-title > strong,
html body .feature-head > strong {
  font-size: var(--aotu-type-card-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-card-title-leading) !important;
  letter-spacing: 0 !important;
}

html body .advanced-title > small,
html body .workspace .advanced-grid .advanced-card .advanced-title > small,
html body #advanced-functions .advanced-card .advanced-title > small,
html body .feature-head > small {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

html body:not(.feature-focus-mode):not(.library-focus-mode):not(.works-focus-mode) .advanced-board .advanced-title > strong,
html[data-mobile-workbench="true"] body.feature-showcase-mode:not(.feature-focus-mode):not(.works-focus-mode):not(.library-focus-mode) .workspace #advanced-functions .advanced-title > strong {
  font-size: var(--aotu-type-card-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-card-title-leading) !important;
  letter-spacing: 0 !important;
}

html body:not(.feature-focus-mode):not(.library-focus-mode):not(.works-focus-mode) .advanced-board .advanced-title > small,
html[data-mobile-workbench="true"] body.feature-showcase-mode:not(.feature-focus-mode):not(.works-focus-mode):not(.library-focus-mode) .workspace #advanced-functions .advanced-title > small {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

html[data-mobile-workbench="true"] body :is(
  #points-value,
  .hero-text > h1,
  .hero-title-accent,
  .section-head > h2,
  .mobile-merchant-shortcuts > button > strong,
  .advanced-title > strong,
  .feature-head > strong
) {
  font-weight: var(--aotu-type-semibold) !important;
}

html[data-mobile-workbench="true"] body :is(
  .workspace-theme-toggle > span,
  .advanced-chip,
  .mobile-bottom-nav-item > strong
) {
  font-weight: var(--aotu-type-medium) !important;
}

body[data-pet-surface] :is(
  .pet-user-button > span,
  .pet-hero h1,
  .pet-section-heading h2,
  .pet-feature-card > button,
  .pet-feature-card > button > span,
  .pet-trust-grid b
) {
  font-weight: var(--aotu-type-semibold) !important;
}

body[data-pet-surface] :is(
  .pet-eyebrow,
  .pet-studio-heading > div > span,
  .pet-section-heading span,
  .pet-tool-card > i
) {
  font-weight: var(--aotu-type-medium) !important;
}

body[data-pet-surface] .pet-feature-copy > small {
  font-weight: var(--aotu-type-regular) !important;
}

body[data-pet-surface] :is(.pet-use-asset > i, .pet-result-empty > h3) {
  font-weight: var(--aotu-type-semibold) !important;
}

/* The mobile before/after labels are guarded by a legacy ID-level important
 * selector, so keep this final compatibility rule equally scoped. */
html[data-mobile-workbench="true"] body.feature-focus-mode.workstation-feature-mode[data-active-feature] #mobile-merchant-feature-showcase .mobile-merchant-showcase-side > span {
  font-weight: 600 !important;
}

/* Semantic hierarchy correction pass.
 * These selectors intentionally distinguish compact metadata, card titles and
 * explanatory copy. They sit last so old high-specificity feature rules cannot
 * flatten all text into the same visual level. */

/* Detail-page compact fields: the field name is tertiary; its selected value
 * is one step stronger, but both remain smaller than regular controls. */
html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel .detail-page-select-field summary > span {
  font-size: var(--aotu-type-compact-label-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-compact-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel .detail-page-select-field summary > strong,
html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel .detail-page-select-menu > button {
  font-size: var(--aotu-type-compact-value-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-compact-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel :is(
  .detail-page-module-card label strong,
  .detail-reference-button strong,
  .detail-style-preset-button span,
  .outpaint-preset-text > strong,
  .poster-design-type-copy > strong,
  .print-extract-mode-grid .choice-button > span > strong,
  .view-preset-button > strong
) {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-control-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel :is(
  .outpaint-preset-text > small,
  .poster-design-type-copy > small,
  .print-extract-mode-grid .choice-button > span > small,
  .view-preset-button > small,
  .try-on-garment-upload .upload-copy > small,
  .live-sticker-reference-button .upload-copy > small,
  .poster-design-reference-button .upload-copy > small,
  .text-edit-head small,
  .print-extract-section-head small,
  .live-sticker-section-head small
) {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

html[data-industry="pet"] body.feature-focus-mode.workstation-feature-mode[data-active-feature="detail-page"] #pet-detail-product-name-input {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-control-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel .experience-upload-button strong {
  font-size: var(--aotu-type-card-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-card-title-leading) !important;
  letter-spacing: 0 !important;
}

/* Video model menu is a title + metadata pair, not a single heavy button. */
html body.feature-focus-mode.workstation-feature-mode[data-active-feature="video-generate"] #task-panel :is(
  .video-profile-menu button > strong,
  .video-profile-option-title,
  .video-profile-option-title .video-profile-name
) {
  font-size: 13px !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature="video-generate"] #task-panel :is(
  .video-profile-menu button > small,
  .video-profile-option-meta,
  .video-profile-option-meta .video-profile-description
) {
  font-size: 11px !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: 1.4 !important;
  letter-spacing: 0 !important;
}

/* Recent works/tasks share one title, count and action scale. */
html body :is(
  .wrinkle-latest-toolbar > span,
  .video-latest-toolbar > span,
  .task-recent-head > strong
) {
  font-size: var(--aotu-type-card-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-card-title-leading) !important;
  letter-spacing: 0 !important;
}

html body :is(
  .wrinkle-latest-toolbar > span > small,
  .video-latest-toolbar > span > small,
  .task-recent-head > small
) {
  font-size: var(--aotu-type-caption-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-caption-leading) !important;
  letter-spacing: 0 !important;
}

html body :is(
  .wrinkle-latest-toolbar button,
  .video-latest-toolbar button,
  .task-recent-head button
) {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

/* Official material library hierarchy. */
html body .official-material-head strong {
  font-size: var(--aotu-type-section-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-section-title-leading) !important;
  letter-spacing: 0 !important;
}

html body :is(.official-material-head small, .official-material-empty small) {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

html body .official-material-category-row button {
  font-size: var(--aotu-type-compact-value-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-compact-leading) !important;
  letter-spacing: 0 !important;
}

html body .official-material-card span {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

html body .official-material-empty strong {
  font-size: var(--aotu-type-card-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-card-title-leading) !important;
  letter-spacing: 0 !important;
}

/* The right-side showcase must keep the same hierarchy for every feature. */
html body.feature-showcase-mode .feature-image-showcase-board .feature-image-showcase-heading strong,
html body.feature-showcase-mode .wrinkle-latest-showcase-empty .feature-image-showcase-heading strong {
  font-size: 22px !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
}

html body.feature-showcase-mode .feature-image-showcase-board .feature-image-showcase-heading small,
html body.feature-showcase-mode .wrinkle-latest-showcase-empty .feature-image-showcase-heading small {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

/* Pet usage scene: one font family and three compact text levels.
 * 15px = local titles, 13px = values/actions, 11px = labels/helpers. */
html[data-industry="pet"] body.feature-focus-mode.workstation-feature-mode[data-active-feature="pet-product-scene"] #task-panel {
  font-family: "Microsoft YaHei", sans-serif !important;
  font-synthesis: none;
}

html[data-industry="pet"] body.feature-focus-mode.workstation-feature-mode[data-active-feature="pet-product-scene"] #task-panel :is(
  button,
  input,
  select,
  textarea,
  summary
) {
  font-family: inherit !important;
  font-synthesis: none;
  letter-spacing: 0 !important;
}

html[data-industry="pet"] body.feature-focus-mode.workstation-feature-mode[data-active-feature="pet-product-scene"] #task-panel :is(
  #settings-title,
  #upload-title,
  .pet-product-scene-plan-heading > div:first-child > strong
) {
  font-size: var(--aotu-type-card-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-card-title-leading) !important;
  letter-spacing: 0 !important;
}

html[data-industry="pet"] body.feature-focus-mode.workstation-feature-mode[data-active-feature="pet-product-scene"] #task-panel :is(
  .pet-fashion-setting-label,
  #extra-prompt-label,
  .pet-product-scene-primary-select .pet-detail-product-type-copy > strong,
  .pet-product-scene-custom-select > summary strong,
  .detail-reference-button strong
) {
  font-size: var(--aotu-type-compact-value-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-compact-leading) !important;
  letter-spacing: 0 !important;
}

/* Keep the primary-select value (including “请选择”) visually aligned with
 * “上传商品图”; its compact 13px size remains intentionally unchanged. */
html[data-industry="pet"] body.feature-focus-mode.workstation-feature-mode[data-active-feature="pet-product-scene"] #task-panel .pet-product-scene-primary-select .pet-detail-product-type-copy > strong {
  color: var(--ink) !important;
  font-family: inherit !important;
  font-style: normal !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-card-title-leading) !important;
  letter-spacing: 0 !important;
}

html[data-industry="pet"] body.feature-focus-mode.workstation-feature-mode[data-active-feature="pet-product-scene"] #task-panel :is(
  .pet-product-scene-primary-select > .pet-detail-product-type-menu > button,
  .pet-product-scene-plan-tabs button,
  .pet-product-scene-custom-menu button,
  .settings-bottom-area summary span,
  .settings-bottom-area summary strong,
  .settings-bottom-area button
) {
  font-size: var(--aotu-type-compact-value-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-compact-leading) !important;
  letter-spacing: 0 !important;
}

html[data-industry="pet"] body.feature-focus-mode.workstation-feature-mode[data-active-feature="pet-product-scene"] #task-panel #extra-prompt {
  font-size: var(--aotu-type-compact-value-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-compact-leading) !important;
  letter-spacing: 0 !important;
}

html[data-industry="pet"] body.feature-focus-mode.workstation-feature-mode[data-active-feature="pet-product-scene"] #task-panel :is(
  .pet-product-scene-primary-select .pet-detail-product-type-copy > small,
  .pet-product-scene-primary-select .pet-detail-product-type-copy > small em,
  .pet-product-scene-primary-select .pet-detail-product-type-hint,
  .pet-product-scene-plan-heading > div:first-child > small,
  .pet-product-scene-custom-select > summary small,
  .pet-fashion-setting-label small,
  .detail-reference-button small
) {
  font-size: var(--aotu-type-caption-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-caption-leading) !important;
  letter-spacing: 0 !important;
}

html[data-industry="pet"] body.feature-focus-mode.workstation-feature-mode[data-active-feature="pet-product-scene"] #task-panel .pet-product-scene-plan-summary strong {
  font-size: var(--aotu-type-compact-label-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

html[data-industry="pet"] body.feature-focus-mode.workstation-feature-mode[data-active-feature="pet-product-scene"] #task-panel #upload-note {
  font-size: var(--aotu-type-caption-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-caption-leading) !important;
  letter-spacing: 0 !important;
}

html[data-industry="pet"] body.feature-focus-mode.workstation-feature-mode[data-active-feature="pet-product-scene"] #task-panel :is(
  .pet-product-scene-primary-select .pet-detail-product-type-copy > small em,
  .pet-product-scene-primary-select .pet-detail-product-type-hint
) {
  font-weight: var(--aotu-type-semibold) !important;
}

html[data-industry="pet"] body.feature-focus-mode.workstation-feature-mode[data-active-feature="buyer-show"] #task-panel .pet-buyer-show-option-copy > strong {
  font-size: var(--aotu-type-compact-value-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-compact-leading) !important;
  letter-spacing: 0 !important;
}

html[data-industry="pet"] body.feature-focus-mode.workstation-feature-mode[data-active-feature="buyer-show"] #task-panel .pet-buyer-show-option-copy > small {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

/* Root website and authentication dialog. */
.platform-language-control select {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-control-leading) !important;
  letter-spacing: 0 !important;
}

.platform-section-head span {
  font-weight: var(--aotu-type-medium) !important;
}

.platform-auth-dialog-head h2 {
  font-size: var(--aotu-type-page-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-page-title-leading) !important;
  letter-spacing: 0 !important;
}

.platform-auth-dialog-head p,
.platform-auth-agreement,
.platform-auth-message {
  font-weight: var(--aotu-type-regular) !important;
}

.platform-auth-tabs button,
.platform-auth-forgot,
.platform-auth-send-code {
  font-weight: var(--aotu-type-medium) !important;
  letter-spacing: 0 !important;
}

.platform-auth-field > span:first-child {
  font-weight: var(--aotu-type-semibold) !important;
  letter-spacing: 0 !important;
}

.platform-auth-field input {
  font-weight: var(--aotu-type-regular) !important;
}

.platform-auth-submit {
  font-weight: var(--aotu-type-semibold) !important;
  letter-spacing: 0 !important;
}

.platform-legal-date {
  font-size: var(--aotu-type-body-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-body-leading) !important;
  letter-spacing: 0 !important;
}

/* Mobile official homepage: page > section > card > helper. */
.mobile-hero-copy h1 {
  font-size: var(--aotu-type-page-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-page-title-leading) !important;
  letter-spacing: 0 !important;
}

.mobile-hero-copy > span,
.mobile-section-head > span,
.mobile-industry-card > em {
  font-size: var(--aotu-type-caption-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-caption-leading) !important;
  letter-spacing: 0 !important;
}

.mobile-section-head > h2 {
  font-size: var(--aotu-type-section-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-section-title-leading) !important;
  letter-spacing: 0 !important;
}

.mobile-industry-card > strong {
  font-size: var(--aotu-type-card-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-card-title-leading) !important;
  letter-spacing: 0 !important;
}

.mobile-industry-card > small {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

.mobile-primary-action > span {
  font-size: var(--aotu-type-action-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-action-leading) !important;
  letter-spacing: 0 !important;
}

.mobile-toast {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

/* Shared mobile industry entry pages. */
html[data-mobile-workbench="true"] body .hero-text > h1,
html[data-mobile-workbench="true"] body .hero-title-accent {
  font-size: var(--aotu-type-page-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-page-title-leading) !important;
  letter-spacing: 0 !important;
}

html[data-mobile-workbench="true"] body.feature-showcase-mode:not(.feature-focus-mode):not(.works-focus-mode):not(.library-focus-mode) .hero-card h1 {
  font-size: var(--aotu-type-page-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-page-title-leading) !important;
  letter-spacing: 0 !important;
}

html[data-mobile-workbench="true"] body .section-head > h2 {
  font-size: var(--aotu-type-section-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-section-title-leading) !important;
  letter-spacing: 0 !important;
}

html[data-mobile-workbench="true"] body.feature-showcase-mode:not(.feature-focus-mode):not(.works-focus-mode):not(.library-focus-mode) .section-head > h2 {
  font-size: var(--aotu-type-section-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-section-title-leading) !important;
  letter-spacing: 0 !important;
}

html[data-mobile-workbench="true"] body.feature-showcase-mode:not(.feature-focus-mode):not(.works-focus-mode):not(.library-focus-mode) .workspace :is(
  .function-card .feature-head > strong,
  #advanced-functions .advanced-title > strong
) {
  font-size: var(--aotu-type-card-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-card-title-leading) !important;
  letter-spacing: 0 !important;
}

html[data-mobile-workbench="true"] body .mobile-merchant-shortcuts > button > strong {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-control-leading) !important;
  letter-spacing: 0 !important;
}

html[data-mobile-workbench="true"] body .mobile-merchant-shortcuts > button > small {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

/* Mobile personal center, including panels that are initially hidden. */
body.mobile-personal-page :is(.studio-head h1, .page-head h1) {
  font-size: var(--aotu-type-page-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-page-title-leading) !important;
  letter-spacing: 0 !important;
}

body.mobile-personal-page .section-head :is(h1, h2),
body.mobile-personal-page :is(.payment-head strong, .official-background-head strong, .output-picker-head strong, .confirm-sheet > strong) {
  font-weight: var(--aotu-type-semibold) !important;
  letter-spacing: 0 !important;
}

body.mobile-personal-page .section-head :is(h1, h2) {
  font-size: var(--aotu-type-section-title-size) !important;
  line-height: var(--aotu-type-section-title-leading) !important;
}

body.mobile-personal-page :is(.form-label, .label-row > span) {
  font-size: var(--aotu-type-label-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-label-leading) !important;
  letter-spacing: 0 !important;
}

body.mobile-personal-page :is(.studio-kicker, .studio-head > span, .generation-status > span) {
  font-size: var(--aotu-type-caption-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-caption-leading) !important;
  letter-spacing: 0 !important;
}

body.mobile-personal-page :is(
  .studio-head > p,
  .generate-button > small,
  .auth-panel-title > span,
  .official-background-head small,
  .output-picker-head small,
  .payment-head > span,
  .payment-method-copy small,
  .confirm-sheet > p
) {
  font-weight: var(--aotu-type-regular) !important;
  letter-spacing: 0 !important;
}

body.mobile-personal-page :is(
  .generate-button > span,
  .auth-panel-title > strong,
  .login-card button,
  .register-card button,
  .confirm-sheet button,
  .payment-method-copy strong
) {
  font-weight: var(--aotu-type-semibold) !important;
  letter-spacing: 0 !important;
}

body.mobile-personal-page :is(.payment-order strong, .payment-qr strong, .trial-points strong) {
  font-weight: var(--aotu-type-semibold) !important;
}

body.mobile-personal-page .official-background-categories button {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

body.mobile-personal-page :is(
  .payment-order span,
  .payment-order small,
  .payment-order em,
  .payment-qr span,
  .payment-message
) {
  font-weight: var(--aotu-type-regular) !important;
}

/* AI assistant result/degraded states. */
:is(.ai-assistant-degraded, .ai-assistant-empty-line) {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

.ai-assistant-list,
.ai-assistant-alternatives span {
  font-size: var(--aotu-type-body-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-body-leading) !important;
  letter-spacing: 0 !important;
}

.ai-assistant-alternatives strong {
  font-weight: var(--aotu-type-semibold) !important;
}

/* Growth-page feedback and sticky actions. */
.form-message {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

.floating-cta span,
.floating-cta a {
  font-weight: var(--aotu-type-semibold) !important;
  letter-spacing: 0 !important;
}

.growth-toast {
  font-weight: var(--aotu-type-medium) !important;
  letter-spacing: 0 !important;
}

/* Unified material center and detail-page recent output toolbar. */
html body.library-focus-mode .material-library-tabs button {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-control-leading) !important;
  letter-spacing: 0 !important;
}

html body.library-focus-mode .material-library-tabs strong {
  font-size: var(--aotu-type-control-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-control-leading) !important;
  letter-spacing: 0 !important;
}

html body.library-focus-mode .material-library-tabs small {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-regular) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature="detail-page"] .detail-page-latest-toolbar > span {
  font-size: var(--aotu-type-card-title-size) !important;
  font-weight: var(--aotu-type-semibold) !important;
  line-height: var(--aotu-type-card-title-leading) !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature="detail-page"] .detail-page-latest-toolbar > button {
  font-size: var(--aotu-type-helper-size) !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: var(--aotu-type-helper-leading) !important;
  letter-spacing: 0 !important;
}

/* Prompt-action typography stays late in the cascade; layout and chrome live in styles.css. */
html body.feature-focus-mode.workstation-feature-mode[data-active-feature] :is(
  #task-panel .prompt-optimize-button,
  #task-panel .video-material-mention-button,
  #free-generate-page .free-prompt-optimize-button,
  #free-generate-page .free-material-picker-button,
  .xhs-requirement-wrap .xhs-prompt-optimize-button
) {
  color: #5b4be8 !important;
  font-size: 11px !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: 1 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] :is(
  #task-panel .prompt-optimize-button,
  #task-panel .video-material-mention-button,
  #free-generate-page .free-prompt-optimize-button,
  #free-generate-page .free-material-picker-button,
  .xhs-requirement-wrap .xhs-prompt-optimize-button
):hover:not(:disabled) {
  color: #5142d8 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] :is(
  #task-panel .prompt-optimize-button,
  #task-panel .video-material-mention-button,
  #free-generate-page .free-prompt-optimize-button,
  #free-generate-page .free-material-picker-button,
  .xhs-requirement-wrap .xhs-prompt-optimize-button
):disabled {
  color: #aaa6be !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] :is(
  #task-panel .prompt-optimize-button,
  #free-generate-page .free-prompt-optimize-button,
  .xhs-requirement-wrap .xhs-prompt-optimize-button
).is-busy {
  color: #ffffff !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] :is(
  #task-panel .prompt-optimize-button,
  #free-generate-page .free-prompt-optimize-button,
  .xhs-requirement-wrap .xhs-prompt-optimize-button
) .lucide {
  color: currentColor !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] :is(
  #task-panel .prompt-optimize-button,
  #free-generate-page .free-prompt-optimize-button,
  .xhs-requirement-wrap .xhs-prompt-optimize-button
) > span {
  color: inherit !important;
  font: inherit !important;
  font-size: 11px !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: 1 !important;
}

html[data-theme="dark"] body.feature-focus-mode.workstation-feature-mode[data-active-feature] :is(
  #task-panel .prompt-optimize-button,
  #task-panel .video-material-mention-button,
  #free-generate-page .free-prompt-optimize-button,
  #free-generate-page .free-material-picker-button,
  .xhs-requirement-wrap .xhs-prompt-optimize-button
) {
  color: #c8bcff !important;
}

html[data-theme="dark"] body.feature-focus-mode.workstation-feature-mode[data-active-feature] :is(
  #task-panel .prompt-optimize-button,
  #task-panel .video-material-mention-button,
  #free-generate-page .free-prompt-optimize-button,
  #free-generate-page .free-material-picker-button,
  .xhs-requirement-wrap .xhs-prompt-optimize-button
):hover:not(:disabled) {
  color: #eeeaff !important;
}

html[data-theme="dark"] body.feature-focus-mode.workstation-feature-mode[data-active-feature] :is(
  #task-panel .prompt-optimize-button,
  #task-panel .video-material-mention-button,
  #free-generate-page .free-prompt-optimize-button,
  #free-generate-page .free-material-picker-button,
  .xhs-requirement-wrap .xhs-prompt-optimize-button
):disabled {
  color: #7f8493 !important;
}

html[data-theme="dark"] body.feature-focus-mode.workstation-feature-mode[data-active-feature] :is(
  #task-panel .prompt-optimize-button,
  #free-generate-page .free-prompt-optimize-button,
  .xhs-requirement-wrap .xhs-prompt-optimize-button
).is-busy {
  color: #ffffff !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel #prompt-optimize-button,
html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel #video-material-mention-button {
  font-size: 11px !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel #prompt-optimize-button > span {
  color: inherit !important;
  font: inherit !important;
  font-size: 11px !important;
  font-weight: var(--aotu-type-medium) !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
}

html body.feature-focus-mode.workstation-feature-mode[data-active-feature] #task-panel #prompt-optimize-button .lucide {
  color: currentColor !important;
}
