/* Keep the brand face for large display type; use native sans-serif for reading. */
:root {
  --font-reading:-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Microsoft YaHei UI','Microsoft YaHei','Noto Sans CJK SC',sans-serif;
  --font-display:'AaYuanWeiTuSi-2','PingFang SC','Microsoft YaHei',sans-serif;
  --font:var(--font-reading);
}
body {font-family:var(--font-reading);font-size:16px;font-synthesis:none;line-height:1.7;}
h1,h2 {font-family:var(--font-display);}
h3,button,input,select,textarea {font-family:var(--font-reading);}
h3 {font-weight:600;}
button,input,select,textarea {letter-spacing:normal;}
input::placeholder,textarea::placeholder {color:#b4bbb5;opacity:1;}
.desktop-nav,.text-link,.button,.demo-pill {font-size:15px;}
.button {font-weight:600;}
.hero-footnote,.hero-spec,.hero-side-note,.hero-secondary,.hero-actions>p,.asset-disclosure {font-size:13px!important;line-height:1.75;}
.hero-bottom>div>p,.comparison-intro p,.use-item p,.example-tile p,.principle-list p,.guide-table p,.question-list p {font-size:16px;line-height:1.8;}
.process-strip strong,.process-strip small,.section-kicker,.section-heading>p,.section-heading>.small,.use-item small,.example-image>span,.visual-header,.photo-label,.site-footer .text-link {font-size:14px;}
.project-name,.studio-top-actions .text-link,.studio-steps {font-size:14px;}
.studio-top-actions .text-link {min-height:44px;}
.view-tabs button {font-size:14px;min-height:42px;padding-inline:10px;}
.preview-meta,.preview-status {font-size:13px;line-height:1.6;}
.image-stage figcaption {font-size:13px;padding:5px 9px;}
.result-description strong,.results-heading {font-size:16px;}
.result-description p,.results-heading .text-link {font-size:14px;line-height:1.75;}
.result-card strong,.result-card>span {font-size:13px;line-height:1.5;}
.result-list {height:auto;min-height:122px;flex-shrink:0;}
.result-card {min-height:110px;}
.asset-item strong {font-size:14px;line-height:1.6;}
.asset-item small,.asset-remove {font-size:13px;line-height:1.6;}
.batch-label,.assets-panel select,.batch-section strong,.batch-section p,.batch-section .button,.batch-section .text-link {font-size:14px;}
.batch-section>.small,.session-note {font-size:13px;line-height:1.75;}
.panel-heading h2,.in-studio h2,.dialog-heading h2 {font-family:var(--font-reading);font-weight:600;}
.panel-heading h2 {font-size:18px;}
.panel-heading h2>span,.zoom-tools .zoom-reset {font-size:13px;}
.settings-panel legend,.mode-tabs button,.usage-options label>span,.style-grid label>span {font-size:15px;line-height:1.6;}
.mode-tabs button,.usage-options label>span,.style-grid label>span {min-height:46px;}
.setting-help,.protected-text-label>span,.settings-message,.generate-area>p,.range-setting small {font-size:13px;line-height:1.75;color:#bec6bf;}
.protected-text-label,.range-setting label,.range-setting output {font-size:15px;}
.protected-text-label input,.custom-description textarea,.advanced select,.export-form-grid input,.export-form-grid select {font-size:16px;min-height:46px;}
.print-check input {font-size:16px;min-height:44px;}
.quality-label output {font-size:13px;}
.style-grid label:has(input:disabled) {opacity:.75;}
.custom-description {font-size:14px;}
.protection strong,.advanced summary,.local-settings>summary,.advanced>div {font-size:15px;line-height:1.65;}
.protection>div>span,.generate-area>div,.generate-area>div strong,.future-label,.local-label,.step-number {font-size:13px;line-height:1.6;}
.protection>div>span,.generate-area>div {color:#c1cec4;}
.future-label,.local-label {font-weight:500;}
.generate-area>div {flex-wrap:wrap;}
.settings-panel .generate-area>p {font-size:13px;line-height:1.75;color:#bec6bf;}
.generate-area .button,.preview-footer .button,.mobile-actionbar .button {font-size:15px;font-weight:600;min-height:46px;}
.preview-footer>span {font-size:13px;line-height:1.6;color:#c1c8c2;}
#providerSummary {max-width:210px;}
.preview-footer {flex-wrap:wrap;}
.export-form-grid label,.quality-label,.print-check>label {font-size:15px;}
.info-dialog>p,.info-dialog dd,.info-dialog dt,.export-help,.print-check>div,.review-confirm,.generation-target {font-size:14px;line-height:1.8;}
.dialog-heading p,.export-summary strong,.export-summary span,.export-summary small,.export-size {font-size:14px;line-height:1.75;}
.export-summary strong {overflow-wrap:anywhere;}
.dialog-actions .button,#generateDialog .dialog-actions .button,.toast {font-size:15px;}
body.in-studio {--muted:#bbc3bc;}
body.in-studio .demo-pill,#connectionLabel {font-size:13px;}
body.gallery-version .desktop-nav {font-size:15px;font-weight:500;}
body.gallery-version .button {font-weight:600;}
body.gallery-version .gallery-upload>p {font-family:var(--font-reading);font-size:13px!important;color:#465548!important;}
body.gallery-version .gallery-upload>div {font-size:14px;}
body.gallery-version .process-strip strong {font-family:var(--font-reading);font-size:15px;font-weight:600;}
body.gallery-version .guide-table strong {font-family:var(--font-reading);font-weight:600;}
body.gallery-version .process-strip small {font-size:14px;}
body.gallery-version .cover-credit {font-size:14px;text-shadow:0 1px 3px #000;}
body.gallery-version .asset-disclosure {color:#405246;}
body.gallery-version.in-studio .text-link {font-size:14px;}
body.gallery-version.in-studio .button {font-size:15px;}
body.gallery-version.in-studio .header-right .demo-pill {font-size:13px;}
body.gallery-version dialog {--muted:#c2ccc4;}
@media(max-width:1180px) and (min-width:701px) {
  .view-tabs button {font-size:14px;padding-inline:7px;}
  .studio-top-actions .text-link {font-size:14px;}
}
@media(max-width:700px) {
  .project-name,.studio-top-actions .text-link {font-size:13px;}
  .studio-top {height:auto;min-height:55px;flex-wrap:wrap;padding-block:8px;}
  .studio-top-actions {gap:12px;margin-left:auto;}
  .view-tabs {display:flex;flex:1;}
  .view-tabs button {font-size:14px;padding-inline:7px;flex:1;}
  .preview-toolbar .zoom-tools {margin-left:auto;}
  .preview-meta,.preview-status {font-size:13px;}
  .settings-panel .panel-heading h2 {font-size:18px;}
  .settings-panel .panel-heading .text-link {font-size:14px;}
  .usage-options label>span {font-size:14px;}
  .settings-panel legend,.style-grid label>span {font-size:15px;}
  .generate-area>div,.generate-area>div strong {font-size:13px;}
  .export-size {font-size:13px;display:flex;flex-wrap:wrap;gap:4px 12px;}
  .dialog-heading h2,#generateDialog .dialog-heading h2 {font-size:21px;line-height:1.5;}
  .visual-footer {flex-wrap:wrap;}
  body.gallery-version .gallery-upload>div .text-link {font-size:15px;}
  body.gallery-version .cover-topline {font-size:14px;}
  body.gallery-version .cover-link {font-size:16px;}
  body.gallery-version .cover-credit {font-size:13px;}
  body.gallery-version .visual-header,body.gallery-version .photo-label {font-size:13px;}
  body.gallery-version .process-strip {grid-template-columns:1fr;padding:24px;gap:19px;}
  body.gallery-version .process-strip strong {font-size:16px;}
  body.gallery-version .process-strip small {font-size:14px;}
  body.gallery-version.in-studio .header-right .demo-pill {font-size:13px;}
}
/* Mobile audit: separate action groups and retain comfortable touch targets. */
@media(max-width:700px) {
  .brand small {display:none!important;}
  .nav-toggle,.icon-button,.zoom-tools button,.favorite-button {min-width:44px;min-height:44px;}
  .zoom-tools {gap:8px;}
  .preview-toolbar {display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px 16px;align-items:center;}
  #openAssets {grid-column:1;grid-row:1;}
  .preview-toolbar .zoom-tools {grid-column:2;grid-row:1;justify-self:end;margin:0;}
  body.in-studio .preview-toolbar .zoom-tools button {width:44px;height:44px;min-width:44px;min-height:44px;}
  .preview-toolbar .view-tabs {grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;width:100%;padding:0;border:0;background:transparent;}
  .preview-toolbar .view-tabs button {min-width:0;min-height:46px;padding:8px 3px;border:1px solid #5b665e;border-radius:5px;line-height:1.4;}
  .studio-top-actions {gap:12px;flex-wrap:wrap;}
  .studio-top-actions .text-link {padding-inline:4px;}
  .mobile-actionbar {gap:12px;padding-top:12px;}
  .mobile-actionbar .button,body.gallery-version.in-studio .mobile-actionbar .button {min-height:48px;}
  body.gallery-version.in-studio .generate-area .button {min-height:48px;}
  body.gallery-version .button.compact {min-height:44px;}
  body.gallery-version .example-image>span {font-size:13px;line-height:1.6;}
  .empty-results,.asset-empty {font-size:14px;line-height:1.75;}
  .asset-remove {min-height:44px;min-width:64px;margin-top:4px;}
  .asset-list .text-link {min-height:44px;padding:8px;}
  .usage-options,.style-grid {gap:10px;}
  .usage-options label>span {line-height:1.65;}
  .dialog-actions {display:grid;grid-template-columns:1fr;gap:12px;}
  .dialog-actions .button,body.gallery-version .dialog-actions .button,#generateDialog .dialog-actions .button {width:100%;min-height:48px;white-space:normal;}
  .dialog-heading {gap:12px;}
  .export-form-grid {grid-template-columns:1fr;gap:16px;}
  .export-form-grid label {min-width:0;}
  .export-form-grid select {width:100%;}
  #exportDialog .dialog-actions {padding-bottom:max(4px,env(safe-area-inset-bottom));}
  .review-confirm {font-size:14px;gap:12px;}
  .review-confirm input {width:22px;height:22px;flex-shrink:0;}
}

.studio-account{white-space:nowrap;min-height:44px;padding-inline:6px;}
@media(max-width:700px){body.gallery-version .studio-account{font-size:13px;}body.gallery-version .site-header .header-upload{display:inline-flex;min-width:44px;padding-inline:10px;}body.gallery-version .header-upload-label,body.gallery-version .header-upload .icon{display:none;}body.gallery-version .header-upload::before{content:"上传";font-size:13px;}body.gallery-version .header-right{gap:8px;}.in-studio #aboutDemo{display:none!important;}}

/* Product selection and multi-angle controls use the readable UI font. */
.composition-settings{min-width:0;border:0;padding:0;margin:24px 0;}
.composition-settings label{display:block;margin:12px 0 7px;font-size:14px;line-height:1.7;color:#e0e8e2;font-family:var(--font-reading);}
.composition-settings select,.composition-settings textarea{display:block;width:100%;max-width:100%;min-width:0;min-height:46px;border:1px solid #637267;border-radius:6px;padding:10px 11px;background:#252d28;color:#f1f5f2;font:400 15px/1.6 var(--font-reading);}
.composition-settings select:focus-visible,.composition-settings textarea:focus-visible{outline:3px solid #8ac6a5;outline-offset:3px;}
.composition-settings option:disabled{color:#b2bbb4;}
.composition-settings .setting-help{font-size:14px;line-height:1.8;color:#c5cfc7;margin-top:10px;}
.composition-notice{font:400 14px/1.8 var(--font-reading);color:#f0e7c8;background:#343229;border:1px solid #74694a;border-radius:6px;padding:12px;margin:12px 0;}
.composition-notice[hidden],#angleConsentLabel[hidden]{display:none;}
#angleConsentLabel input{width:20px;height:20px;flex:0 0 20px;}
@media(max-width:700px){.composition-settings label{font-size:15px;}.composition-settings select,.composition-settings textarea{font-size:16px;min-height:48px;}.composition-settings legend{line-height:1.6;}.composition-settings .setting-help,.composition-notice{font-size:14px;}#generateDialog{max-height:calc(100dvh - 32px);overflow-y:auto;}}

.model-refresh{min-height:44px;font-size:14px;padding:8px 0;}
