/* Shared reading hierarchy. Theme-specific ink also reaches existing controls. */
:root{--text-primary:#f2faf5;--text-secondary:#d0e1d5;--text-placeholder:#c3d7ca;--theme-ink:var(--text-primary);--theme-muted:var(--text-secondary);--muted:var(--text-secondary)}
:root:is([data-theme="light"],[data-theme="white"]){--text-primary:#17232b;--text-secondary:#414c57;--text-placeholder:#5a6570;--theme-ink:var(--text-primary);--theme-muted:var(--text-secondary);--muted:var(--text-secondary)}
:root:is([data-theme="dark"],[data-theme="mushroom"],[data-theme="black"]){--text-primary:#f3f6fc;--text-secondary:#cbd5e4;--text-placeholder:#afbed2;--theme-ink:var(--text-primary);--theme-muted:var(--text-secondary);--muted:var(--text-secondary)}
:root[data-theme="hallow"]{--text-primary:#fbf1ff;--text-secondary:#e0cce9;--text-placeholder:#c9afd7;--theme-ink:var(--text-primary);--theme-muted:var(--text-secondary);--muted:var(--text-secondary)}
body{font-family:'Noto Sans SC','Microsoft YaHei','PingFang SC',system-ui,sans-serif;font-size:15px;font-weight:450;line-height:1.7}
:root body :is(h1,h2,h3){font-weight:700;line-height:1.5}
:root body .page-heading h1{font-size:clamp(25px,2.2vw,32px)}
:root body .workspace-head h1{font-size:26px}
:root body .section-title h2{font-size:21px}
:root body :is(.template-body h3,.library-info h3,.creation-template strong){font-size:17px;font-weight:650;line-height:1.6}
:root body :is(.checkin-entry h2,.bottom-guide h3,.personal-card-title,.panel-heading,.step b,.step strong){font-size:15px;font-weight:650;line-height:1.7}
:root body :is(.nav-item,.profile strong){font-size:15px;font-weight:600}
:root body :is(.primary,.secondary,.new-button,.text-button,.filter,.chip,.top-help,.account-login-button,.wechat-button,.chat-retry,.upload-image-button,.palette-footer button,.tour-card button,.theme-option strong,.accessory-type-option strong,.weapon-type-options .chip){font-size:14px;font-weight:600;line-height:1.6}
:root body [data-action="onboard"]{font-size:14px}
:root body :is(.page-heading p,.section-title p,.template-body p,.creation-template>span:not(.creation-template-icon),.library-info p,.bottom-guide p,.workspace-head p,.plan-intro,.pending-plan-body>p,.emerging-idea p,.result-banner p,.empty p,.faq p,.modal p,.texture-panel p,.interactive-guide p,.install-step p,.personal-identity>p){font-size:14px;line-height:1.85}
:root body :is(.message-text,.message.user .message-text,.guide-content p,.guide-content li){font-size:15px;line-height:1.95}
:root body .message-name{font-size:13px;font-weight:650}
:root body :is(.message-text,.message.user .message-text,.message-name){color:var(--text-primary)}
:root body :is(.field-label,.palette-row label,.texture-color-list label){font-size:13px;font-weight:550;line-height:1.7}
:root body :is(.field input,.field select,.field textarea,.search-input-wrap input,.profile-name-editor input,.texture-modal textarea){font-size:15px;line-height:1.7}
:root body :is(.create-box textarea,.chat-composer .create-box textarea){font-size:16px;line-height:1.8}
:root body :is(.brand-sub,.nav-label,.nav-count,.profile small,.profile-account small,.version-card small,.crumb,.crumb strong,.search-button,.search-button kbd,.eyebrow,.mode-badge,.season,.step small,.step-number,.composer-hint,.idea-chips>span,.tiny-tag,.card-label,.template-meta,.creation-template small,.template-scroll-hint,.saved-label,.workflow-step,.workflow-step b,.field small,.plan-status,.file-list h3,.code-title,.file-button,.notice,.guide-toc h3,.guide-toc a,.onboard-point,.search-result small,.open-creation-note,.appearance-placeholder,.palette-editor summary>span,.palette-disclaimer,.palette-status,.palette-entry>span,.weapon-type-group small,.weapon-picker-footer a,.accessory-picker .accessory-type-note,.accessory-type-option small,.texture-panel small,.texture-format-note,.texture-drop span,.texture-drop input,.login-subtitle,.login-privacy,.login-skip,.login-demo-note,.login-perk,.login-story>small,.account-kicker,.account-demo,.account-stats span,.account-logout,.checkin-entry p,.checkin-day>span,.checkin-day small,.profile-field-hint,.profile-footnote,.personal-account-row,.personal-signout,.tour-eyebrow,.tour-hint,.theme-menu-heading small,.theme-option small,.theme-feedback,footer){font-size:12px;font-weight:500;line-height:1.8}
:root body .checkin-rule{font-size:12px!important;color:var(--text-secondary)!important}
:root body .texture-color-status{font-size:12px!important}
:root body .account-error{font-size:14px!important}
:root body :is(.plan-live-status,.message-role,.settings-state-note,.checkin-day){font-size:12px;font-weight:500;color:var(--text-secondary)}
:root body :is(.plan-live-status,.settings-state-note){margin-left:auto}
:root body .message-role{margin-left:8px}
:root body .workspace-phase{font-size:14px;font-weight:500;color:var(--text-secondary)}
:root body footer .text-button{font-size:12px}
:root body .palette-editor summary{font-size:14px;font-weight:600}
:root body .weapon-type-group h3{font-size:15px;font-weight:650}
:root body .guide-content code{font-size:13px}
:root body .personal-account-row>strong{font-weight:600}
:root body .search-button{color:var(--text-secondary)}
:root body :is(.draft-scope,.texture-upload-status){font-size:12px;line-height:1.8;color:var(--text-secondary)}
:root body :is(.typing,.toast){font-size:14px}
:root body :is(.palette-row input[type="text"],.texture-color-list input[type="text"]){font-size:14px}
:root body .code-area pre{font-size:13px;line-height:1.9}
:root body .guide-content h2{font-size:22px}
:root body :is(.tour-card h2,.pending-plan h2){font-size:20px}
:root body .accessory-type-option strong{font-size:14px}
:root body .creation-template{min-height:168px}
:root body .template-meta{flex-wrap:wrap;gap:8px 12px}
:root body .template-meta span{white-space:nowrap}
:root body footer{display:flex;flex-wrap:wrap;gap:8px 14px}
:root body :is(.brand-sub,.nav-label,.nav-count,.version-card small,.profile small,.crumb,.eyebrow,.page-heading p,.section-title p,.step small,.template-body p,.template-meta,.template-meta .difficulty,.creation-template small,.composer-hint,.library-info p,.plan-intro,.field-label,.bottom-guide p,.idea-chips>span,.workspace-head p,.saved-label,.workflow-step,.field small,.plan-status,.result-banner p,.file-list h3,.code-title,.notice,.guide-content p,.guide-content li,.faq p,.modal p,.search-result small,.search-empty,.empty p,.template-scroll-hint,.pending-plan-body>p,.open-creation-note,.emerging-idea p,.appearance-placeholder,.palette-disclaimer,.palette-row label,.palette-status,.palette-entry>span,.weapon-type-group small,.accessory-type-option small,.texture-modal p,.texture-drop span,.texture-panel p,.texture-panel small,.texture-format-note,.texture-color-list label,.login-story p,.login-story>small,.login-perk,.login-subtitle,.login-privacy,.login-skip,.login-demo-note,.account-stats span,.account-logout,.checkin-entry p,.personal-identity>p,.profile-field-hint,.profile-footnote,.personal-account-row>span,.personal-signout,.tour-card p,.tour-hint,footer){color:var(--text-secondary)}
:root body .creation-template>span:not(.creation-template-icon){color:var(--text-secondary)}
:root[data-theme] body :is(input,textarea)::placeholder{color:var(--text-placeholder);opacity:1}
:root body .card-label{background:#102019e8;color:#f8fff9;font-weight:650}
:root body .hero-slide h2{font-size:clamp(28px,2.6vw,36px);font-weight:750;line-height:1.45}
:root body .hero-slide p{font-size:14px;font-weight:500;line-height:1.8;color:var(--text-secondary)}
:root body .hero-slide.hero-celestial h2{font-size:clamp(25px,2.1vw,30px)}
:root body .hero-carousel[data-slide="2"] .hero-actions button{font-size:14px}
@media(max-width:1050px){
  :root body .hero-carousel[data-slide="2"] .hero-actions{top:190px;bottom:auto}
  :root body .hero-slide.hero-celestial .hero-content{padding-top:20px}
}
@media(max-width:680px){
  :root body .page-heading h1{font-size:25px}
  :root body .section-title h2{font-size:20px}
  :root body .workspace-head h1{font-size:24px}
  :root body .hero-slide h2{font-size:27px}
  :root body .hero-slide.hero-celestial h2{font-size:25px}
  :root body .hero.hero-carousel{height:440px;min-height:440px}
  :root body .hero-carousel .hero-actions{gap:10px}
  :root body .hero-actions button{white-space:normal}
  :root body .hero-carousel[data-slide="2"] .hero-actions{top:202px}
  :root body .step small{max-width:none}
  :root body .steps{grid-template-columns:1fr;gap:16px;padding:16px}
  :root body .step{min-width:0;flex-direction:row;align-items:center;gap:12px;padding:0}
  :root body .step-number{flex-shrink:0}
  :root body .step:not(:last-child):after{display:none}
  :root body .section-title p{flex-basis:100%}
  :root body .bottom-guide{gap:12px;flex-wrap:wrap}
  :root body .checkin-entry>div{min-width:0}
  :root body .theme-menu{width:285px}
  :root body .topbar [data-action="onboard"]{font-size:13px;padding:8px 9px}
  :root body .personal-cover>.secondary{margin-left:0}
  :root body .texture-color-list{grid-template-columns:1fr}
}
